java – 如何使用onejar Maven插件在清单中设置附加的Class-Path条目?

前端之家收集整理的这篇文章主要介绍了java – 如何使用onejar Maven插件在清单中设置附加的Class-Path条目?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有办法使用onejar-maven-plugin向JAR文件清单添加任意类路径条目?

我找到了configure maven-jar-plugin to do this的方式,但是似乎没有一个这样的选择for onejar-maven-plugin.

找不到额外的类(否则为什么使用onejar插件,对吗?),而是找到一个必须在JAR外部的配置文件.

是否有直接解决方案或解决方法

解决方法

一个jar包的使用是否真的需要?
您可以实现相同的目标(包装在一个单一的jar您的应用程序和所有必需的依赖关系,包括传递性,并添加类路径和配置使用更稳定/标准的插件)应用以下方法

>使用Maven Jar Plugin和问题中提到的approach在应用程序Jar中配置Class-Path条目
>使用Maven Assembly Plugin打包一个单一的JAR,包括依赖关系,如here所述,在另一个stackoverflow问题/答案中.

one-jar可执行文件(不使用one-jar插件)的示例可以如下:

  1. <build>
  2. <plugins>
  3. <plugin>
  4. <groupId>org.apache.maven.plugins</groupId>
  5. <artifactId>maven-jar-plugin</artifactId>
  6. <configuration>
  7. <!-- your further configuration here -->
  8. </configuration>
  9. </plugin>
  10. <plugin>
  11. <artifactId>maven-assembly-plugin</artifactId>
  12. <configuration>
  13. <archive>
  14. <manifest>
  15. <mainClass>com.sample.MainApp</mainClass>
  16. <!-- your further configuration here -->
  17. </manifest>
  18. </archive>
  19. <descriptorRefs>
  20. <descriptorRef>jar-with-dependencies</descriptorRef>
  21. </descriptorRefs>
  22. </configuration>
  23. <executions>
  24. <execution>
  25. <id>make-assembly</id>
  26. <phase>package</phase>
  27. <goals>
  28. <goal>single</goal>
  29. </goals>
  30. </execution>
  31. </executions>
  32. </plugin>
  33. </plugins>
  34. </build>

如果你需要进一步玩classpath和Maven,我建议还要检查这个问题here在stackoverflow.

猜你在找的Java相关文章