一、Maven 簡介
Maven 是一個Java項目的自動化構建工具,通過Maven進行構建,可以使構建過程更加穩定、可靠。它可以自動下載需要的依賴和插件,自動識別出項目中需要編譯、打包和測試的源代碼,並進行適當的管理和配置。
在使用 Maven 的過程中,我們需要將 JDK 配置好,才能完成項目的自動化構建。下面將從多個方面進行 JDK 的配置。
二、配置 JDK 環境變數
首先,需要配置 JDK 環境變數。在 Windows 環境下,需要將 JDK 的 bin 目錄路徑添加到 PATH 環境變數中。
<!-- Windows 環境下,添加 JDK bin 目錄到 PATH 環境變數 -->
<profiles>
<profile>
<id>windows</id>
<activation>
<os>
<family>windows</family>
</os>
</activation>
<properties>
<path.separator>;</path.separator>
<jdk.home>C:\Program Files\Java\jdk1.8.0_211</jdk.home>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>add-source</goal>
<goal>add-resource</goal>
</goals>
<configuration>
<source>${jdk.home}\src.zip</source>
<resources>
<resource>
<directory>${jdk.home}\jre\lib\rt.jar</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
三、配置 JAVA_HOME 環境變數
然後,需要將 JDK 的安裝路徑添加到 JAVA_HOME 環境變數中,以便 Maven 可以找到 JDK。
<!-- Windows 環境下,配置 JAVA_HOME 環境變數 -->
<profiles>
<profile>
<id>windows</id>
<activation>
<os>
<family>windows</family>
</os>
</activation>
<properties>
<path.separator>;</path.separator>
<jdk.home>C:\Program Files\Java\jdk1.8.0_211</jdk.home>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>add-source</goal>
<goal>add-resource</goal>
</goals>
<configuration>
<source>${jdk.home}\src.zip</source>
<resources>
<resource>
<directory>${jdk.home}\jre\lib\rt.jar</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<fork>true</fork>
<compilerId>javac</compilerId>
<verbose>true</verbose>
<executable>${jdk.home}/bin/javac</executable>
<source>1.8</source>
<target>1.8</target>
</configuration>
<dependencies>
<dependency>
<groupId>com.sun.tools</groupId>
<artifactId>javac</artifactId>
<version>9+181</version>
<scope>system</scope>
<systemPath>${jdk.home}/lib/tools.jar</systemPath>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<jdk.home>/usr/lib/jvm/java-openjdk</jdk.home>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>add-source</goal>
<goal>add-resource</goal>
</goals>
<configuration>
<source>${jdk.home}/src.zip</source>
<resources>
<resource>
<directory>${jdk.home}/jre/lib/rt.jar</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
</profiles>
四、配置構建插件
為了使 Maven 正確地使用 JDK 進行編譯和測試,我們需要為項目配置構建插件。
<!-- 配置 Maven 構建插件,使用 JDK 進行編譯和測試 -->
<profiles>
<profile>
<id>windows</id>
<activation>
<os>
<family>windows</family>
</os>
</activation>
<properties>
<path.separator>;</path.separator>
<jdk.home>C:\Program Files\Java\jdk1.8.0_211</jdk.home>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>add-source</goal>
<goal>add-resource</goal>
</goals>
<configuration>
<source>${jdk.home}\src.zip</source>
<resources>
<resource>
<directory>${jdk.home}\jre\lib\rt.jar</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<fork>true</fork>
<compilerId>javac</compilerId>
<verbose>true</verbose>
<executable>${jdk.home}/bin/javac</executable>
<source>1.8</source>
<target>1.8</target>
</configuration>
<dependencies>
<dependency>
<groupId>com.sun.tools</groupId>
<artifactId>javac</artifactId>
<version>9+181</version>
<scope>system</scope>
<systemPath>${jdk.home}/lib/tools.jar</systemPath>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
<configuration>
<forkCount>1</forkCount>
<argLine>-Xmx512m -XX:MaxPermSize=256m -Duser.timezone=GMT+08</argLine>
<systemPropertyVariables>
<java.awt.headless>true</java.awt.headless>
</systemPropertyVariables>
<workingDirectory>${project.basedir}</workingDirectory>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<jdk.home>/usr/lib/jvm/java-openjdk</jdk.home>
</properties>
<build>
<plugins>
<plugin>原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/187599.html