【发布时间】:2016-02-28 18:45:06
【问题描述】:
我一直致力于将 Java 应用程序从 Solaris 服务器移植到 Windows 服务器。我终于重写了调用脚本,为 java 启动命令提供了所有适当的信息(我认为)。但是,我继续得到
找不到主类:com.dir1.dir2.dir3.dir4.ManagementAgent。 程序将退出。
此路径和文件确实存在于其中一个 jar 文件中(CLASSPATH 中的第一个),并且它驻留在显示的路径中(例如,如果 jar 被扩展,类文件的绝对路径将是 c:\apps\ecs\bin\com\dir1\dir2\dir3\dir4\ManagementAgent.class)
我一直在关注the directions from this Q&A,但仍然收到错误消息。
显然我还没有解决什么问题,但我可以弄清楚可能是什么。
%JAVA_HOME%\bin\javaw.exe -Xms512m -Xmx1024m -cp .\ecs.jar;.\ect.jar;.\jmxri.jar;.\jmxtools.jar;.\log4j.jar;.\xercesImp.jar;.\xalan.jar;.\weblogic81.jar;.\classes12_9i.zip;.\localEJB.jar;.\tct_ip1.1.jar com.dir1.dir2.dir3.dir4.ManagementAgent
我从包含所有 jar 的目录中执行命令。我尝试了 CLASSPATH 的几种变体(如下所示):
- 相对路径;一般调用 jars 和 class(例如
.\*;.) - 绝对路径,一般调用 jar 和类(例如
c:\apps\ecs\bin\*;c:\apps\ecs\bin) - 相对路径,显式调用 jars(如上所示)
- 绝对路径,显式调用 jars(如何在 Solaris 服务器上执行)
但似乎没有任何组合有效。
【问题讨论】:
-
对此进行跟进。我最终找到了解决方案 - 问题似乎是安装的 java 是 32 位并且代码需要 64 位安装,或者 java 版本太低(尽管它们是相同的版本,只是不同的更新) ,或两者兼而有之。
标签: java windows batch-file syntax