Java.lang.ClassNotFoundException when running java -jar (still unresolved)

I use ant to build my file build.xml, it compiles in order, but then gets the runtime java.lang.NoClassDefFoundErrorwhen starting the resulting jar via " java -jar my_jar.jar". This seems like a lot, but none of the related questions helped me.

My class path javaccontains only " /usr/local/lib/libthrift.jar", and the main file .javaimports a bunch of lean packages, such as org.apache.thrift.transport.TTransportException.

When I run the program with:

java -jar MyClass.jar

I get an error:

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.

Here is what I have tried so far, which does not work:

  • add a flag on the command line, for example, "java ", the result will be the same as above -cp /usr/local/lib/libthrift.jar -jar my_jar.jar

  • <attribute name="Class-Path" value="./:/usr/local/lib/libthrift.jar"/> jar manifest>, ,

  • -Xbootclasspath/a:/usr/local/lib/libthrift.jar:./ java. , :

    "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger        org.apache.thrift.transport.TServerSocket. <clinit> (TServerSocket.java:36)        MyClass.start( )        MyClass.main( )

! .

EDIT:

, , , .

EDIT:

Java MainClass , .

+3
7
Could not find the main class: MyClass

, MANIFEST, :

, , .

Manifest-Version: 1.0 
Class-Path:  
 customer_client.jar  
 mailer_client.jar  
 signon_client.jar 
  • MainClass "my_jar.jar".

this HowTo:

<target name="jar" depends="compile">
     <delete file="hello.jar"/>
     <delete file="MANIFEST.MF"/>
     <manifest file="MANIFEST.MF">
        <attribute name="Built-By" value="${user.name}"/>
        <attribute name="Main-Class" value="howto.Hello"/>
    </manifest>

      <jar destfile="hello.jar"
           basedir="."
           includes="**/*.class"
           manifest="MANIFEST.MF"
           />
  </target>

<attribute name="Main-Class" value="howto.Hello"/> () MainClass, MainClass.

( ), , ( . SO)
JarRunner <attribute name="Main-Class" value="myPackage.JarRunner"/>.

+8

, , java -jar my-test.jar, . java -jar db_field_cleaner.jar, :

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: James B
Build-Jdk: 1.6.0_01
Package: com.blah.dbfieldcleaner
Specification-Title: db_field_cleaner
Specification-Version: 2.5.7-SNAPSHOT
Implementation-Title: db_field_cleaner
Implementation-Version: 2.5.7-SNAPSHOT
Implementation-Vendor-Id: com.blah.dbfieldcleaner
Implementation-Vendor:
Main-Class: com.blah.dbfieldcleaner.main.Main
mode: development
url: ..\..\db_field_cleaner\target\site
Class-Path: log4j-1.2.14.jar cygna_commons-2.5.7-SNAPSHOT.jar mail-1.4
 .jar activation-1.1.jar jdic-0.9.5.jar jdic_native-0.9.5.jar jdic_plu
 s-0.2.2.jar jdic_plus_native-0.2.2.jar jtds-1.2.2.jar xstream-1.3.1.j
 ar xpp3_min-1.1.4c.jar commons-net-2.0.jar text_processing-2.5.7-SNAP
 SHOT.jar

, Maven, !

+4

:-) . , *.jar , , log4j.jar . , .

+1

java .

-jar -cp/-classpath . -jar , . , , - . , .

, :

java -cp /usr/local/lib/libthrift.jar:my_jar.jar  MyClass

, , , , . , . , .

org/apache/log4j/Logger , log4j. . Thrift, .

0
0

. , , . . Eclipse , , . lib, .

0

, ,

JAR "C:\java\apps\appli.jar", : reference "lib/other.jar", "C:\java\apps\lib\" "other.jar". JAR "lib/other.jar".

: -

  • , "".
  • Java Runnable JAR File JAR .
  • , " " , .. ( JAR).
  • "", JAR , JARS, .
  • , , java -jar abc.jar

    , , JARS, , JAR. java.lang.NoClassDefFoundError..

... , !

0
source

Source: https://habr.com/ru/post/1723849/


All Articles