Я работаю над реализацией ЕКА, я изменил один из файлов Java, скомпилирован с помощью командыОшибка: Не удалось найти или загрузить основной класс на один вызов и без ошибок на другой вызов в том же сценарии
javac -cp lib/*:esalib.jar ./src/clldsystem/esa/ESAAnalyzer.java
и вставить файл .class в соответствующий каталог (esalib.jar/clldsystem/esa) в файле .jar. Также я изменил имя оригинального соответствующего файла .class.
Далее, у меня есть скрипт, питона, который использует команду
java -cp lib/*:esalib.jar clldsystem.esa.ESAAnalyzer param1 param2
но запустив сценарий питона, команда работает хорошо, когда используется в качестве:
x='java -cp "lib/*:esalib.jar" clldsystem.esa.ESAAnalyzer computer apple'
args=shlex.split(x)
p=subprocess.Popen(args)
p.wait()
Но дает ошибку: Могли не найти или загрузить основной класс при использовании в качестве:
x='java -cp "lib/*:esalib.jar" clldsystem.esa.ESAAnalyzer word1 word2'
args=x.split()
p=subprocess.Popen(args)
p.wait()
в том же сценарии. Я читаю переменные word1 и word2 из файла. Зачем это нормально работать в одном месте и давать ошибку в другом? Я проверил использование операторов печати, которые я читаю из файла правильно, поэтому это не должно быть проблемой. Благодаря
здесь подробности того, что случилось:
[email protected]:~/esalib$ python test.py
['java', '-cp', 'lib/*:esalib.jar', 'clldsystem.esa.ESAAnalyzer', 'bottle', 'apple']
index loaded to memory
bottl
appl
vector 1 dimensions: 1782
vector 2 dimensions: 2766
0.024397644631615697
beach
['people', 'sand', 'desert', 'snow']
['java', '-cp', '"lib/*:esalib.jar"', 'clldsystem.esa.ESAAnalyzer', 'word1', 'word2']
Error: Could not find or load main class clldsystem.esa.ESAAnalyzer
beach
people
['java', '-cp', '"lib/*:esalib.jar"', 'clldsystem.esa.ESAAnalyzer', 'word1', 'word2']
Error: Could not find or load main class clldsystem.esa.ESAAnalyzer
beach
sand
и так далее для каждой итерации
кажется, что ваша проблема с JAVA не с питоном ... можете ли вы пройти более подробный вывод о том, что произошло? – Oz123
@ Oz123: я добавил детали в вопрос – nish