将comm.jar添加到我的jar中

时间:2011-08-17 09:16:55

标签: java jar javax.comm

我将comm.jar库添加到.jar我的javax.comm.NoSuchPortException

这是因为我没有将javax.comm.propertieswin32com.dll添加到我的jar中吗?如何在清单中添加此文件?

4 个答案:

答案 0 :(得分:3)

Java不支持Jars中的Jars。确保javax.comm包在应用程序的运行时类路径上的正确方法是添加一个清单,该清单提供相关路径到依赖的Jar,并确保Jar位于正确的位置找到。有关详细信息,请参阅Working with Manifest Files: The Basics&特别是Java Tutorial中的Adding Classes to the JAR File's Classpath

还有其他方法可用于applet和应用程序。使用Java Web Start启动。

答案 1 :(得分:2)

@ Gogoo的回答是将内容复制到JVM安装目录中。

它应该有用,但通常不是一个好主意:

  • 以这种方式安装的内容将由您使用该安装运行的所有应用程序共享。根据它的不同,它可能会干扰其他应用程序。

  • 每次更新JVM时,都必须记住将这些文件复制到新的安装目录中。

IMO,更好的办法是将这些文件放在一个单独的目录树中,然后编写一个包装器脚本,用类路径和库路径上的文件启动应用程序。和/或看@Andrew Thompson的答案。

答案 2 :(得分:1)

尝试FatJar

  

Fat Jar Eclipse插件是一个部署工具,可以部署   将Eclipse java项目合并为一个可执行jar。

     

它将条目“Build Fat-JAR”添加到导出向导。此外   eclipse标准jar-exporter引用的类和jar是   包含在“Fat-Jar”中,因此生成的jar包含所有需要的内容   类和可以直接用“java -jar”执行,没有类路径   必须设置,不得部署额外的罐子。

答案 3 :(得分:0)

copy comm.jar \jdk1.6\jre\lib\ext
copy win32com.dll \jdk1.6\bin
copy javax.comm.properties \jdk1.6\jre\lib

并通过命令行启动your.jar:

java -jar your.jar