0

我正在构建一个程序,该程序需要安装在我没有对 %JAVA_HOME%/lib 的写入权限的 Windows 机器上。

除了 %JAVA_HOME%/lib 之外,还有什么地方可以将 javax.comm.properties 移动到其他地方吗?

根据 Java COM API 常见问题解答:

问:我的应用程序在枚举可用端口时没有找到任何端口。
答:为了让 Java 通信 API 找到端口,文件 javax.comm.properties 必须位于正确的位置。首选位置在 /lib 中。有关备用位置和更多信息,请参阅安装说明。

在哪里可以找到包含这些备用位置的 Sun 安装说明?

4

2 回答 2

0

基于一个人在这里说的话: https ://forums.oracle.com/forums/thread.jspa?threadID=1316406

您可以将文件javax.comm.properties放在放置comm.jar的位置。但是要运行该程序,您应该指定指向 comm.jar 的路径,如下所示:

java -cp <your.class.path>;<path.to>/comm.jar YourProgramThatUsesComm.jar

希望能帮助到你!

于 2012-05-30T16:53:56.680 回答
0

我找到了一种适合我的方法。以下是要求:

  • comm.jar必须完全命名comm.jar(不是comm-2.0.jar示例),并且必须位于类路径中名为完全命名的目录中"lib"
  • javax.comm.properties还必须具有该确切名称,并且与 . 位于同一目录中comm.jar
  • win32com.dll必须在java.library.path.

因此,如果您有这样的目录设置:

- lib\
   |- comm.jar
   |- javax.comm.properties
- ext\
   |- win32com.dll

java然后您可以在这些目录的根目录中使用以下命令(假设您的项目jar文件YourMainClass也位于该lib目录中:

java -Djava.library.path=.\ext -cp .\lib\* YourMainClass

有了这个,您应该不再需要在JRE的\bin或目录下放置任何东西。\lib

于 2016-05-09T18:12:02.753 回答