【问题标题】:run java program from cmd with class imports from jar files使用 jar 文件中的类导入从 cmd 运行 java 程序
【发布时间】:2015-11-03 15:42:53
【问题描述】:

嘿社区,我有这个菜鸟问题,所以如果有人能提供帮助,那就太好了:)

就这样吧……

我正在尝试通过运行 java 演示文件来测试 stanford NLP 解析器,该文件包含在您可以从 here 下载的文件中

我的问题可能在于 .jar 文件中包含的类的导入。我在其他一些 stackoverflow 线程上尝试了解决方案,例如 do
javac -cp "jar/path/number/1";"jar/path/number/2" ParserDemo.java
但是
java -cp "jar/path/number/1";"jar/path/number/2" ParserDemo
命令无效。

我还尝试将每个 jar 文件提取到一个公用文件夹中,但随后出现错误的类文件错误..

那么这里的动作是什么?我该如何解决这个问题?

附:请不要提出使用在线版解析器的解决方案。

编辑:我使用的是 Windows 8.1,以防万一有人需要知道

【问题讨论】:

  • javac 工作了吗?它是否创建了一个名为 ParseDemo.class 的文件?
  • 您的命令看起来如何?您是否包含了 jar 文件名,或者添加了jars/location/* 通配符以包含目录中的所有 jar 文件。另外,“命令不起作用”是什么意思?你有什么错误吗?
  • @mlk 是的,我已经完成了所需的 PATH 修改..
  • 是“。”包含在您的路径中?试试java -cp ".;jar/path/number/1";"jar/path/number/2" ParserDemo

标签: java jar import cmd


【解决方案1】:

由于它是作为评论发布的,我不知道它是否会以供将来参考,所以我将按照用户 mlk 的建议将解决方案写在这里

我将我的 java 命令修复为 java -cp ".;jar/path/number/1";"jar/path/number/2" ParserDemo,它运行良好!

这是因为当前文件夹 (.) 未包含在类路径中,因此 Java 无法看到 ParserDemo.class 文件。

【讨论】:

  • 您也可以通过接受它来将此答案标记为您最终得到的解决方案:meta.stackexchange.com/a/5235/186652
  • 很高兴工作。请将此答案标记为“正确”
  • 我会尽快(它说我可以在 23 小时内接受):)
猜你喜欢
  • 2013-12-17
  • 2013-06-30
  • 2013-07-15
  • 2013-08-01
  • 2023-04-04
  • 1970-01-01
  • 2012-08-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多