java.lang.ClassNotFoundException ao executar java -jar

Eu estou usando formigas para construir minhabuild.xml arquivo, compila ok, mas, em seguida, obtendo um tempo de execuçãojava.lang.NoClassDefFoundError ao executar o jarro resultante via "java -jar my_jar.jar". Parece que isso surge muito, mas nenhuma das soluções relacionadas a perguntas funcionou para mim.

Meu caminho de classe parajavac contém apenas "/usr/local/lib/libthrift.jar"e o principal.java arquivo importa um monte de pacotes de poupança, comoorg.apache.thrift.transport.TTransportException.

Quando tento executar o programa via:

java -jar MyClass.jar

, Eu recebo o erro:

Exception in thread "main" **java.lang.NoClassDefFoundError**: org/apache/thrift/transport/TTransportException
Caused by: java.lang.ClassNotFoundException: org.apache.thrift.transport.TTransportException
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
Could not find the main class: **MyClass**. Program will exit.

Aqui estão as coisas que eu tentei até agora que não funcionam:

adicionando um sinalizador na linha de comando como "java-cp /usr/local/lib/libthrift.jar -jar my_jar.jar", o resultado é o mesmo erro acima

adicionando<attribute name="Class-Path" value="./:/usr/local/lib/libthrift.jar"/> dentro do meu potemanifest> tag, o resultado é o mesmo erro acima

adicionando-Xbootclasspath/a:/usr/local/lib/libthrift.jar:./ para a linha de comando java. resolve o primeiro erro, mas surge um erro diferente:

Exceção no segmento "main" java.lang.NoClassDefFoundError: org / apache / log4j / Logger em org.apache.thrift.transport.TServerSocket. <Clinit> (TServerSocket.java:36) em MyClass.start (Unknown Source) no MyClass .main (fonte desconhecida)

EDITAR:

Se eu comentar o código que instancia as classes ausentes, mas deixar as importações, o código será executado corretamente.

EDITAR:

Mudei minhas classes java para um servidor e referenciei o MainClass com o servidor no atributo manifest, mas isso não corrigiu nada.

questionAnswers(7)

yourAnswerToTheQuestion