本文介绍了使用maven生成可执行的jar包的方法,分享给大家,具体如下:
从pom的xsi中可以打开描述pom的schema:
可以看到pom中,project的结构:
默认的mvn install生成的jar是不带主类入口的,需要在maven-compile-plugin中设置主类,
4.0.0 com.cetc.di hellocetc0.0.1-SNAPSHOT jar hellocetc http://maven.apache.org UTF-8 junit junit3.8.1 test org.apache.maven.plugins maven-jar-plugin1.8 1.8 com.cetc.di.hellocetc.App truelib/
执行mvn install:
在target目录中,发现jar包已经生成:
用java decompiler,可以看到manifest中已经加入了MainClass:
使用mvn help:effective-pom可以看到pom.xml的完整结构(包括继承而来的属性):
[INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building hellocetc 0.0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-help-plugin:2.2:effective-pom (default-cli) @ hellocetc --- [INFO] Effective POMs, after inheritance, interpolation, and profiles are applied:[INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 0.526 s [INFO] Finished at: 2015-11-18T20:05:12+08:00 [INFO] Final Memory: 10M/245M [INFO] ------------------------------------------------------------------------ 4.0.0 com.cetc.di hellocetc0.0.1-SNAPSHOT hellocetc http://maven.apache.org UTF-8 junit junit3.8.1 test false central Central Repository https://repo.maven.apache.org/maven2 never false central Central Repository https://repo.maven.apache.org/maven2 D:UsersaWorkspacesMyEclipse 2015hellocetcsrcmainjava D:UsersaWorkspacesMyEclipse 2015hellocetcsrcmainscripts D:UsersaWorkspacesMyEclipse 2015hellocetcsrctestjava D:UsersaWorkspacesMyEclipse 2015hellocetctargetclasses D:UsersaWorkspacesMyEclipse 2015hellocetctargettest-classes D:UsersaWorkspacesMyEclipse 2015hellocetcsrcmainresources D:UsersaWorkspacesMyEclipse 2015hellocetcsrctestresources D:UsersaWorkspacesMyEclipse 2015hellocetctarget hellocetc-0.0.1-SNAPSHOT maven-antrun-plugin 1.3 maven-assembly-plugin 2.2-beta-5 maven-dependency-plugin 2.8 maven-release-plugin 2.3.2 maven-jar-plugin 2.4 1.8 1.8 com.cetc.di.hellocetc.App truelib/ maven-clean-plugin 2.5 default-clean clean clean maven-resources-plugin 2.6 default-testResources process-test-resources testResources default-resources process-resources resources maven-jar-plugin 2.4 default-jar package jar 1.8 1.8 com.cetc.di.hellocetc.App truelib/ 1.8 1.8 com.cetc.di.hellocetc.App truelib/ maven-compiler-plugin 3.1 default-compile compile compile default-testCompile test-compile testCompile maven-surefire-plugin 2.12.4 default-test test test maven-install-plugin 2.4 default-install install install maven-deploy-plugin 2.7 default-deploy deploy deploy maven-site-plugin 3.3 default-site site site D:UsersaWorkspacesMyEclipse 2015hellocetctargetsite org.apache.maven.plugins maven-project-info-reports-plugindefault-deploy site-deploy deploy D:UsersaWorkspacesMyEclipse 2015hellocetctargetsite org.apache.maven.plugins maven-project-info-reports-pluginD:UsersaWorkspacesMyEclipse 2015hellocetctargetsite org.apache.maven.plugins maven-project-info-reports-pluginD:UsersaWorkspacesMyEclipse 2015hellocetctargetsite
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。



