我正在尝试从命令行运行VLCJ测试jar。VLCJ需要两个外部JAR
如果将这些jar与尝试运行的可执行jar放在同一目录中,则可以成功运行它。但是,如果我将它们放在自己的目录中并执行以下操作:
java -classpath "C:\Users\Constantin\workspace\Java Libraries\JNA" -jar executable.jar
Run Code Online (Sandbox Code Playgroud)
它无法从JNA库中找到一个类。我是Java的新手,我的搜索没有揭示可能的答案。所以我希望有人可以帮助回答:
我该如何调试?为什么找不到罐子?我的-classpath做错了吗?
先感谢您!
康斯坦丁
显式地包括罐子,或使用简单的*通配符,但也包括可执行罐子。main在命令行上指定可执行jar的类(它将在清单中)。
java -classpath "C:\Users\Constantin\workspace\Java Libraries\JNA\*;executable.jar" com.foo.Bar
Run Code Online (Sandbox Code Playgroud)
(哪里com.foo.Bar是包含main方法的类,即应用程序的入口点。)
请参阅Java选项文档 - jar指定后,所有其他类路径信息将被丢弃,并且您指定的jar必须包含所有用户类。
无关,但我总是尝试避免在Windows上使用空格的路径。好吧,到处都是,但是特别是在处理与Java相关的东西时。它应该可以正常工作,但在某些情况下却不能(我在看您,某些应用服务器的某些版本)。
| 归档时间: |
|
| 查看次数: |
5855 次 |
| 最近记录: |