이 질문이 전에도 제기되었다고 확신합니다. . 나는 이미 언급하지만Maven을 사용하여 항아리를 포장하는 동안 org/springframework/context/support/ClassPathXmlApplicationContext에 대해 NoClassDefFoundError 가져 오기
배경 :(실패와 같은 다른 옵션을 시도했다 : 받는다는을 사용하여 모든 종속 항아리 포장
의 pom.xml을
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>assembly:package</id>
<phase>package</phase>
<goals>
<!-- Work around for http://jira.codehaus.org/browse/MASSEMBLY-97
as the goal should be attached. -->
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.Application</mainClass>
</manifest>
<manifestEntries>
<Class-Path>config/</Class-Path>
</manifestEntries>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
</manifest>
</archive>
</configuration>
</plugin>
클래스 경로
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/java" />
<classpathentry kind="src" path="src/main/resources" />
<classpathentry exported="true" kind="con"
path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER" />
<classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre7" />
</classpath>
나는
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/c
ontext/support/ClassPathXmlApplicationContext
at com.Application.main(Application.java:13)
Caused by: java.lang.ClassNotFoundException: org.springframework.context.support
.ClassPathXmlApplicationContext
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
이 어떤 아이디어로
java -cp Scheduler-0.0.1-SNAPSHOT-exe.jar com.Application
나는 점점 오전 예외를 사용하여 내 보낸 항아리를 실행하고 언제? 모든 종속 항아리 용 스프링 버전 3.0.6을 사용하고 있습니다.
감사 Gendaful
'스케줄러-0.0.1-SNAPSHOT-exe.jar' 명령은,이 또한 클래스 경로에 모든 종속성을 포함해야 -jar 자바를 사용하여 당신이 그것을 실행할 수있는 JAR을 포장 할 때 메인 클래스로 com.Application를 지정하는 경우 – hoaz