考虑一个从main方法启动的Java程序,它需要来自tools.jar的东西。在这种情况下,一些实用程序代码用于连接到JMX服务。我们有什么选择,只能将它包装在使用-cp管理类路径的shell脚本中吗?我们宁愿使用MANIFEST.MF类路径。
答案 0 :(得分:1)
来自http://java.sun.com/developer/Books/javaprogramming/JAR/basics/manifest.html
the URLs in the Class-Path header are given relative to the URL of the JAR file of the applet or application.
我不相信您可以选择使用shell包装器来获取类路径上的tools.jar。除非你在内部写一些自定义类加载器以允许你找到外部jar。
答案 1 :(得分:0)
如果从依赖jar中合并类是一个选项,我将创建一个“Runnable JAR文件”。基本上,您从中提取类并将它们与您自己的类放在JAR中。这消除了对包装脚本的需求。
要在Eclipse中执行此操作,请选择您的项目File
- > Export
- > Java
- > Runnable JAR file
;该选项将要求您至少执行一次主类,以了解在实际运行生成的JAR时要运行的配置文件。