Эта, казалось бы, простая проблема - это нагнать меня. У меня есть банка с набором зависимостей, которые, похоже, не могут работать в Linux. Все банки и сценарий находятся в одном каталоге.unix java classpath cp добавление
Это один поднимает и пытается запустить мой основной класс
java -cp MyJar.jar com.mylib.MyMainClass
, но, конечно, он бросает ClassNotFoundException
на одном из классов зависимостей. Затем я пытаюсь добавить одну из зависимостей, как так
java -cp MyJar.jar:MyDependencyJar.jar com.mylib.MyMainClass
Тогда он говорит ClassNotFoundException
для com.mylib.MyMainClass
!
Я также попытался это с теми же проблемами различных
java -cp . com.mylib.MyMainClass
и это
java -cp *.jar com.mylib.MyMainClass
и это
java -cp .:*.jar com.mylib.MyMainClass
Любые идеи, пожалуйста?
Если 'com.mylib.MyMainClass' находится в' MyJar.jar' и всех классах зависимостей в 'MyDependencyJar.jar', тогда' java -cp MyJar.jar: MyDependencyJar.jar com.mylib.MyMainClass' должен работать. Что еще находится в текущем каталоге? – SubOptimal
Да, это то, что я думал и предполагал. Однако это упрямо не сработало. Только ввод всех имен пути перед каждой зависимостью в соответствии с первым ответом. Я очень удивлен этим, но там это .. –