maven in action 笔记一到三章

1. mvn help:system 命令可输出操作系统信息,java 版本信息,java 虚拟机信息,java class path 信息,系统环境变量所有信息,系统文件编码方式等
2. telnet命令:telnet ip port,退出时 ctrl+],然后 q
3. 工程名一般用中划线,包名用小写。一般来说,项目中java类的包都应该基于项目的groupId和artifactId,这样更清晰。
4. groupId, artifactId, version三个元素定义了一个项目的基本坐标,maven世界,任何jar, pom, war都是基于这些基本坐标进行区分。
5. 项目主代码和测试代码。主代码会被打包到最终构件(jar)中,测试代码不会。主代码通常位于src/main/java包中
6. mvn clean compile。clean 告诉Maven清理输出目录 target/,compile告诉Maven编译项目主代码。依赖中 scope 表示依赖(jar包)的作用范围,如果为test则表示依赖只在测试代码中可用,如果在主代码中import则会编译异常。
7. mvn clean test。执行 maven 测试。
8. mvn clean package。打包,打包前会执行测试。打包生成的jar包会放在项目 target/目录下。
9. mvn clean install。将项目输出的jar安装到Maven本地仓库中。命令执行顺序:执行test之前先执行compile,执行package之前先执行test,执行install之前先执行package
10. 为了生成可执行的jar文件,需要借助 maven-shade-plugin,会在MANIFEST.MF 文件中生成Main-class一行。配置如下:
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                  <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                    <configuration>
                        <transformers>
                            <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <!-- 将该信息放到MANIFEST中 -->
                                    <mainClass>com.juvenxu.mvnbook.helloworld.HelloWorld</mainClass>
                                </transformer>
                            </transformers>
                    </configuration>
                    </execution>     
                </executions>
            </plugin>
        </plugins>
    </build>
11. 使用archetype生成项目骨架 mvn archetype:generate


mvn help:system输出信息
===============================================================================
========================= Platform Properties Details =========================
===============================================================================

===============================================================================
System Properties
===============================================================================

java.runtime.name=Java(TM) SE Runtime Environment
sun.boot.library.path=C:\Program Files\Java\jdk1.8.0_121\jre\bin
java.vm.version=25.121-b13
java.vm.vendor=Oracle Corporation
maven.multiModuleProjectDirectory=C:\Users\newtouch
java.vendor.url=http://java.oracle.com/
path.separator=;
guice.disable.misplaced.annotation.check=true
java.vm.name=Java HotSpot(TM) 64-Bit Server VM
file.encoding.pkg=sun.io
user.script=
user.country=CN
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=
java.vm.specification.name=Java Virtual Machine Specification
user.dir=C:\Users\newtouch
java.runtime.version=1.8.0_121-b13
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=C:\Program Files\Java\jdk1.8.0_121\jre\lib\endorsed
os.arch=amd64
java.io.tmpdir=C:\Users\newtouch\AppData\Local\Temp\
line.separator=

java.vm.specification.vendor=Oracle Corporation
user.variant=
os.name=Windows 10
classworlds.conf=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\..\bin\m2.conf
sun.jnu.encoding=GBK
java.library.path=C:\Program Files\Java\jdk1.8.0_121\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\installed\xshell\;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Java\jdk1.8.0_121\bin;C:\Program Files\Java\jre1.8.0_121\bin;D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin;D:\installed\Git\cmd;D:\installed\svn\bin;C:\WINDOWS\System32\OpenSSH\;E:\apis\apache-ant-1.10.6-bin\apache-ant-1.10.6\bin;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Users\newtouch\AppData\Local\Microsoft\WindowsApps;;D:\installed\IntelliJ-IDEA-Community-Edition-2019.1\bin;;.
maven.conf=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\../conf
java.specification.name=Java Platform API Specification
java.class.version=52.0
sun.management.compiler=HotSpot 64-Bit Tiered Compilers
os.version=10.0
library.jansi.path=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\..\lib\jansi-native
user.home=C:\Users\newtouch
user.timezone=Asia/Shanghai
java.awt.printerjob=sun.awt.windows.WPrinterJob
java.specification.version=1.8
file.encoding=GBK
user.name=newtouch
java.class.path=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\..\boot\plexus-classworlds-2.5.2.jar
java.vm.specification.version=1.8
sun.arch.data.model=64
java.home=C:\Program Files\Java\jdk1.8.0_121\jre
sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher help:system
java.specification.vendor=Oracle Corporation
user.language=zh
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode
java.version=1.8.0_121
java.ext.dirs=C:\Program Files\Java\jdk1.8.0_121\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext
sun.boot.class.path=C:\Program Files\Java\jdk1.8.0_121\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\rt.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\sunrsasign.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_121\jre\classes
sun.stderr.encoding=ms936
java.vendor=Oracle Corporation
maven.home=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\..
file.separator=\
java.vendor.url.bug=http://bugreport.sun.com/bugreport/
sun.cpu.endian=little
sun.io.unicode.encoding=UnicodeLittle
sun.stdout.encoding=ms936
sun.desktop=windows
sun.cpu.isalist=amd64

===============================================================================
Environment Variables
===============================================================================

CLASSWORLDS_JAR="D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\..\boot\plexus-classworlds-2.5.2.jar"
PSMODULEPATH=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
COMMONPROGRAMW6432=C:\Program Files\Common Files
PROGRAMW6432=C:\Program Files
PROCESSOR_ARCHITECTURE=AMD64
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
PATH=D:\installed\xshell\;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Java\jdk1.8.0_121\bin;C:\Program Files\Java\jre1.8.0_121\bin;D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin;D:\installed\Git\cmd;D:\installed\svn\bin;C:\WINDOWS\System32\OpenSSH\;E:\apis\apache-ant-1.10.6-bin\apache-ant-1.10.6\bin;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Users\newtouch\AppData\Local\Microsoft\WindowsApps;;D:\installed\IntelliJ-IDEA-Community-Edition-2019.1\bin;
PROGRAMDATA=C:\ProgramData
WDIR=C:\
ANT_HOME=E:\apis\apache-ant-1.10.6-bin\apache-ant-1.10.6
SYSTEMROOT=C:\WINDOWS
AXIS2_HOME=E:\apis\axis2-1.7.9-bin\axis2-1.7.9\
JAVACMD=C:\Program Files\Java\jdk1.8.0_121\bin\java.exe
TMP=C:\Users\newtouch\AppData\Local\Temp
PROGRAMFILES(X86)=C:\Program Files (x86)
EXEC_DIR=C:\Users\newtouch
COMPUTERNAME=LAPTOP-HGO3FQP0
OS=Windows_NT
PROMPT=$P$G
MAVEN_HOME=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3\bin\..
WINDIR=C:\WINDOWS
SYSTEMDRIVE=C:
=::=::\
COMSPEC=C:\WINDOWS\system32\cmd.exe
DRIVERDATA=C:\Windows\System32\Drivers\DriverData
=C:=C:\Users\newtouch
CONFIGSETROOT=C:\WINDOWS\ConfigSetRoot
HOMEDRIVE=C:
LOGONSERVER=\\LAPTOP-HGO3FQP0
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 142 Stepping 9, GenuineIntel
COMMONPROGRAMFILES=C:\Program Files\Common Files
PROGRAMFILES=C:\Program Files
INTELLIJ IDEA COMMUNITY EDITION=D:\installed\IntelliJ-IDEA-Community-Edition-2019.1\bin;
COMMONPROGRAMFILES(X86)=C:\Program Files (x86)\Common Files
TEMP=C:\Users\newtouch\AppData\Local\Temp
NUMBER_OF_PROCESSORS=4
USERDOMAIN=LAPTOP-HGO3FQP0
M2_HOME=D:\installed\apache-maven-3.5.3-bin\apache-maven-3.5.3
PROCESSOR_LEVEL=6
ERROR_CODE=0
SESSIONNAME=Console
USERNAME=newtouch
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
=EXITCODE=00000001
JVMCONFIG=\.mvn\jvm.config
USERDOMAIN_ROAMINGPROFILE=LAPTOP-HGO3FQP0
PUBLIC=C:\Users\Public
ONEDRIVE=C:\Users\newtouch\OneDrive
PROCESSOR_REVISION=8e09
USERPROFILE=C:\Users\newtouch
APPDATA=C:\Users\newtouch\AppData\Roaming
HOMEPATH=\Users\newtouch
LOCALAPPDATA=C:\Users\newtouch\AppData\Local
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_121
ALLUSERSPROFILE=C:\ProgramData
MAVEN_CMD_LINE_ARGS=help:system
MAVEN_PROJECTBASEDIR=C:\Users\newtouch

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 22.121 s
[INFO] Finished at: 2019-09-29T11:02:34+08:00
[INFO] ------------------------------------------------------------------------

发布了35 篇原创文章 · 获赞 14 · 访问量 14万+

猜你喜欢

转载自blog.csdn.net/U___U/article/details/101706514
今日推荐