对不起,这可能是一个愚蠢的问题,但我正在尝试从另一个目录( .class文件在./ .class /.class/中)运行一个类文件。当我从.class文件所在的目录运行时,它会运行,获取arg,并正常播放声音文件。当我用.class文件的路径从另一个目录运行它时,它说找不到它。它还将/
转换为.
。
我做了一些研究,发现它可能是CLASS_PATH
变量的一部分。我将当前的dir添加到类路径中,然后尝试运行它。同样的事情。我试着用-cp ./
参数运行它。同样的事情。
我已经将范围缩小到我需要为路径提供点。我查找了一些例子,所有的例子都说要这样做:com.example.foo
。如何将此./target/classes/SoundHandler.class
(完整路径为/Users/Milo/Developer/JOE/target/classes/SoundHandler.class
)转换为奇怪的“特殊格式”?谢谢!
发布于 2018-09-17 06:06:18
我假设您的SoundHandler.java文件没有任何package语句?
在这种情况下:
java -cp /full/path/to/your/project/dir/target/classes SoundHandler
你所说的“特殊格式”就是类的全名、包以及所有的东西。由于没有包,'full name‘只是SoundHandler
,但您需要告诉VM在哪里可以找到该文件,这就是-cp参数将做的事情。
https://stackoverflow.com/questions/52358662
复制相似问题