【问题标题】:Specifying classpath on execution在执行时指定类路径
【发布时间】:2015-06-02 10:06:05
【问题描述】:

我在运行程序时尝试指定包的类路径,如下所示:

java –cp .;my.package.jar MyMainClass

my.package.jar 与 MyMainClass.class 位于同一目录中。

我收到此错误消息:

Could not find or load main class ?cp

它似乎无法识别开关-cp,而是试图找到一个名为cp 的类。有谁知道这可能是什么原因?

【问题讨论】:

  • 你的 jar 文件是如何准确调用的?当然不是 my.package.jar
  • 添加 OS 和 JDK 细节有问题,会省力吗?
  • 您在错误消息中看到的 ? 看起来很可疑。您是否以某种方式复制粘贴命令并且- 不是真正的常规-?尝试手动在终端中输入命令
  • 我的错,JDK 8 Update 45,Windows 7。@CodeRunner 实际上是 java1.media.jar,我知道这是一个奇怪的命名,但这是一项学校作业,我们的任务是这样命名.
  • @KErlandsson 哇......就是这样......我会躲在某个角落的某个地方,谢谢!

标签: java class jar


【解决方案1】:

如果您在 *nix 上,则类路径分隔符是 :,而不是 ;。在这种情况下,您需要运行 java –cp .:my.package.jar MyMainClass

否则,如果您是寡妇,您在错误消息中收到的 ? 看起来很可疑。您是否以某种方式复制粘贴命令并且- 不是真正的常规-?尝试手动在终端中输入命令。

【讨论】:

  • 太好了,将其添加到答案中
【解决方案2】:

您使用的似乎是旧版本的 Java,它只能识别全名 - 使用 -classpath 而不是 -cp

【讨论】:

  • 我在使用 JDK 8 Update 45,刚刚重新安装了它,问题仍然存在。
猜你喜欢
  • 1970-01-01
  • 2012-05-20
  • 1970-01-01
  • 2021-10-27
  • 1970-01-01
  • 2011-08-31
  • 2023-03-13
  • 2011-03-16
  • 1970-01-01
相关资源
最近更新 更多