第一次打jar包,第一次用maven遇到了问题,抓耳挠腮两天都没解决。
前提:项目在myeclispe里边运行时正常的。maven项目。
遇到问题:第一次打jar是直接export--jar file--然后被告知maven项目是不能这样打的。
然后:使用 run as 里边的先maven clean--再 myeclipse里边的project clean--再run as里边的maven install,然后得到一个很小的jar。
两种打法得到的jar包封装成windows服务的运行的时候都会报出错误,如下图:
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp:
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: Encountered an error running main:
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: java.lang.NoClassDefFoundError: org/apache/log4j/PropertyConfigurator
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at com.ibm.tpc.monitoring.start.Launcher.main(Launcher.java:15)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.lang.reflect.Method.invoke(Method.java:606)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:290)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.lang.Thread.run(Thread.java:745)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: Caused by: java.lang.ClassNotFoundException: org.apache.log4j.PropertyConfigurator
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.security.AccessController.doPrivileged(Native Method)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
INFO | jvm 1 | 2014/12/14 14:47:27 | WrapperSimpleApp Error: ... 7 more
jar的主程序是这样的:
import org.apache.log4j.PropertyConfigurator;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Launcher {
public static void main(String[] args) {
PropertyConfigurator
.configure("");
ApplicationContext context = new ClassPathXmlApplicationContext(
"spring/BeanLocations.xml");