Windows中javax.comm.properties的备用位置
我正在构建一个需要安装在Windows计算机上的程序,对于这些计算机,我没有对%JAVA\u HOME%/lib的写入权限 除了%JAVA\u HOME%/lib之外,还有其他地方可以移动javax.comm.properties吗 根据Java COM API常见问题解答: 问:我的应用程序在枚举可用端口时找不到任何端口 端口。Windows中javax.comm.properties的备用位置,java,windows,serial-port,javax.comm,Java,Windows,Serial Port,Javax.comm,我正在构建一个需要安装在Windows计算机上的程序,对于这些计算机,我没有对%JAVA\u HOME%/lib的写入权限 除了%JAVA\u HOME%/lib之外,还有其他地方可以移动javax.comm.properties吗 根据Java COM API常见问题解答: 问:我的应用程序在枚举可用端口时找不到任何端口 端口。 答:为了让Java通信API找到该文件的端口 javax.comm.properties必须位于正确的位置。首选 位置在/lib中。有关详细信息,请参阅安装说明 其他
答:为了让Java通信API找到该文件的端口 javax.comm.properties必须位于正确的位置。首选 位置在/lib中。有关详细信息,请参阅安装说明 其他位置和更多信息
我在哪里可以找到包含这些备用位置的Sun安装说明?基于一个家伙在这里说的话: 您可以将javax.comm.properties文件放在放置comm.jar的位置。但要运行该程序,您应该指定指向comm.jar的路径,如下所示:
java -cp <your.class.path>;<path.to>/comm.jar YourProgramThatUsesComm.jar
- lib\
|- comm.jar
|- javax.comm.properties
- ext\
|- win32com.dll
java-cp/comm.jar您使用scomm.jar的程序
希望有帮助 我找到了一种适合我的方法。以下是要求:
必须准确命名为comm.jar
(例如,不是comm.jar
),并且必须位于名为comm-2.0.jar
的目录中的类路径中“lib”
也必须具有该确切名称,并且位于与javax.comm.properties
相同的目录中comm.jar
必须在win32com.dll
中引用李>java.library.path
java -cp <your.class.path>;<path.to>/comm.jar YourProgramThatUsesComm.jar
- lib\
|- comm.jar
|- javax.comm.properties
- ext\
|- win32com.dll
然后,您可以在这些目录的根目录中使用以下java
命令(假设项目的jar
文件和YourMainClass
也在lib
目录中:
java -Djava.library.path=.\ext -cp .\lib\* YourMainClass
这样,当我尝试获取javax/comm/NoSuchPortException的NoClassDefFoundError时,您就不需要再将任何内容放在JRE的
\bin
或\lib
目录下了。唯一可以让程序运行但不显示COM端口的方法是将comm.jar放在MyProgram.jar中