将绝对路径中可用的jar文件添加到类路径中

时间:2012-04-25 10:09:36

标签: java maven classpath

我正在使用maven构建工具。我的目的是将一个单独的绝对文件夹[例如:C:\ test1.jar,C:\ test2.jar]中可用的jar文件添加到类路径中。

为此,我在我的pom文件中添加以下内容。

<plugin>
 <artifactId>maven-war-plugin</artifactId>
 <version>2.2</version>
 <configuration>
  <archive>
   <manifest>
    <addClasspath>true</addClasspath>         
   </manifest>
   <manifestEntries> 
     <Class-Path>C:/test1.jar, C:/test2.jar</Class-Path> 
   </manifestEntries>
  </archive>
 </configuration>
</plugin> 

我可以看到jar被添加到战争中可用的MANIFEST.MF文件的类路径中但是当部署了war时,由于“java.lang.ClassNotFoundException”[与test1.jar或test2相关]它失败了的.jar]。

这是否意味着在MANIFEST.MF的类路径中添加的test1.jar和test2.jar未添加到类路径中,或者我在这里遗漏了一些错误。

请帮助我使用战争文件的MANIFEST.MF或任何其他想法来添加以类路径的绝对路径提供的jar文件。

1 个答案:

答案 0 :(得分:2)

更好的解决方案是将jar添加到maven存储库,然后像普通依赖项一样使用它们。这是将jar添加到maven repo的命令。

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
    -DartifactId=<artifact-id> -Dversion=1.0 -Dpackaging=jar

然后在你的pom.xml中

<dependency>
    <groupId><group-id></groupId>
    <artifactId><artifact-id></artifactId>
    <version>1.0</version>
</dependency>