簡體   English   中英

CouchDB4j / mvn依賴項丟失

[英]CouchDB4j/ mvn dependencies are missing

我無法以編程方式設置與本地CouchDB的連接。

我正在使用ouchDb4j-,在我運行並嘗試連接到數據庫之前,一切看起來都不錯。

我的控制台拋出以下錯誤:

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/http/params/HttpParams
[...]
Caused by: java.lang.ClassNotFoundException: org.apache.http.params.HttpParams

由於我的小型應用程序未找到類,因此我檢查了我的依賴關系-一切都很好。 我有:

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.0-beta3</version>
</dependency>
<dependency>
    <groupId>commons-httpclient</groupId>
    <artifactId>commons-httpclient</artifactId>
    <version>3.1</version>
</dependency>

其中應包含所有必需的特定於http的.jar(尤其是第一個應包含httpParams二進制文件;源: http ://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore/4.0-beta3)。

為了防止包括錯誤的二進制文件緩存在我的系統上,我正在運行以下命令:

mvn clean && mvn軟件包

我還刪除了.m2文件夾。

到處搜尋會提示我我的類路徑可能是錯誤的,導致運行時缺少依賴項。 但是我已經在pom中設置了我的類路徑; 看這里:

<plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-jar-plugin</artifactId>
      <version>2.4</version>
      <configuration>
        <archive>
          <manifest>
            <addClasspath>true</addClasspath>
            <classpathPrefix>lib/</classpathPrefix>
            <mainClass>Packagename.Main</mainClass>
          </manifest>
        </archive>
      </configuration>
</plugin>

希望任何人都可以給我一個主意,以便我可以解決此問題:)

最好的祝福。

將這些依賴項添加到插件聲明中,如下所示:

<plugin>
  <groupId>...</groupId>
  <artifactId>...</artifactId>
  <version>...</version>
  <dependencies>
  ...
 </dependencies>
</plugin>

插件有自己的類路徑

找到了解決方案。

問題是執行期間缺少依賴項。

為了確保在運行時綁定了所有必需的文件,我必須包括以下插件:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>1.6</version>
    <executions>
      <execution>
        <phase>package</phase>
        <goals>
          <goal>shade</goal>
        </goals>
      </execution>
    </executions>
  </plugin>

如果我做對的話,它將所有依賴項綁定到“超級” jar上...來源: https : //maven.apache.org/plugins/maven-shade-plugin/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM