真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

使用maven編譯Java項目實例

綜述

專業(yè)從事企業(yè)網(wǎng)站建設和網(wǎng)站設計服務,包括網(wǎng)站建設、域名注冊、網(wǎng)絡空間、企業(yè)郵箱、微信公眾號開發(fā)、微信支付寶重慶小程序開發(fā)成都app軟件開發(fā)公司、軟件開發(fā)、等服務。公司始終通過不懈的努力和以更高的目標來要求自己,在不斷完善自身管理模式和提高技術研發(fā)能力的同時,大力倡導推行新經濟品牌戰(zhàn)略,促進互聯(lián)網(wǎng)事業(yè)的發(fā)展。

本文演示了用Maven編譯Java項目

需要

  • 時間:15分鐘
  • 文本編輯器或者IDE
  • JDK 6 或者更高版本

創(chuàng)建項目

本例主要為了展示Maven,所以Java的項目力求簡單。

創(chuàng)建項目結構

擇一個項目目錄,在 *nix系統(tǒng)上使用下面語句

mkdir -p src/main/java/hello

window下使用命令

mkdir src\main\java\hello

創(chuàng)建如下結構:

└── src
 └── main
 └── java
  └── hello

在src/main/java/hello目錄下創(chuàng)建Java文件HelloWorld.java和 Greeter.java

src/main/java/hello/HelloWorld.java

package hello;
public class HelloWorld {
public static void main(String[] args) {
Greeter greeter = new Greeter();
System.out.println(greeter.sayHello());
}
}

src/main/java/hello/Greeter.java

package hello;
public class Greeter {
public String sayHello() {
return "Hello world!";
}
}

現(xiàn)在項目完成,可以用Maven編譯了。有關Maven的安裝,可以參考Apache Maven 3.1.0 安裝、部署、使用

定義簡單的Maven編譯

首先,在項目的根目錄下創(chuàng)建一個Maven項目定義文件pom.xml,該文件主要是說明項目的名稱、版本和依賴庫

pom.xml

<?xml version="1.0" encoding="UTF-8"?>

4.0.0
org.springframework
gs-maven
jar
0.1.0



org.apache.maven.plugins
maven-shade-plugin
2.1


package

shade




hello.HelloWorld








除了 元素可選外,其他的元素是構成pom.xml 文件的最基本的元素了。它包括以下幾個項目的配置:

  • :POM 模塊版本(通常是4.0.0).
  • :項目所屬的組織編號,通常用域名
  • 項目的名稱(比如,JAR或者WAR的名稱)
  • 項目編譯的版本號
  • 項目打包形式,jar或者war

編譯Java代碼

運行下面語句編譯

mvn compile

編譯完成的.class文件將會出現(xiàn)在target/classes目錄下.如下圖

使用maven編譯Java項目實例

使用maven編譯Java項目實例

運行項目:

mvn exec:java -Dexec.mainClass="hello.HelloWorld"

輸出如下:

使用maven編譯Java項目實例

如果不想直接運行.class文件,可以將其打包:

mvn package

打包完成后,會在target目錄下生成一個JAR文件,文件名由組成。比如本例,將會根據(jù)pom.xml生成gs-maven-0.1.0.jar

使用maven編譯Java項目實例

使用maven編譯Java項目實例

如果你想安裝您的項目的JAR文件到本地Maven倉庫,那么你應該調用下面語句:

mvn installmvn install

此時,你的項目代碼將會經過編譯、測試、打包并拷貝到本地依賴庫,提供給其他項目引用。

以上例子源碼的地址https://github.com/waylau/maven-demo中的demo1

說到項目依賴,下面說下聲明依賴

聲明依賴

上面的例子比較簡單,沒有用到其他庫。但是真實的項目可能會引用(依賴)到很多其他庫。

下面例子,依賴了Joda Time的庫。

修改src/main/java/hello/HelloWorld.java

package hello;
import org.joda.time.LocalTime;
public class HelloWorld {
public static void main(String[] args) {
LocalTime currentTime = new LocalTime();
System.out.println("The current local time is: " + currentTime);
Greeter greeter = new Greeter();
System.out.println(greeter.sayHello());
}
}

現(xiàn)在運行mvn compile將會報錯,因為沒有聲明依賴。在 節(jié)點下插入如下:



joda-time
joda-time
2.2

使用maven編譯Java項目實例

這段內容就聲明了項目的依賴。每個依賴節(jié)點都由三個子節(jié)點組成:

  • : 該依賴庫所屬的組織名稱
  • : 依賴的庫名
  • : 依賴的庫版本

在POM 4中, 中還引入了 ,它主要管理依賴的部署。目前 可以使用5個值:

  • compile,缺省值,適用于所有階段,會隨著項目一起發(fā)布。
  • provided,類似compile,期望JDK、容器或使用者會提供這個依賴。如servlet.jar。
  • runtime,只在運行時使用,如JDBC驅動,適用運行和測試階段。
  • test,只在測試時使用,用于編譯和運行測試代碼。不會隨項目發(fā)布。
  • system,類似provided,需要顯式提供包含依賴的jar,Maven不會在Repository中查找它。

現(xiàn)在你運行mvn compile或者mvn package,Maven會自動下載相關依賴。

完整的pom.xml

<?xml version="1.0" encoding="UTF-8"?>

4.0.0
org.springframework
gs-maven
jar
0.1.0



joda-time
joda-time
2.2






org.apache.maven.plugins
maven-shade-plugin
2.1


package

shade




hello.HelloWorld








運行項目:

mvn exec:java -Dexec.mainClass="hello.HelloWorld"

輸出如下:

使用maven編譯Java項目實例

以上例子源碼的地址https://github.com/waylau/maven-demo中的demo2

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


網(wǎng)站名稱:使用maven編譯Java項目實例
分享路徑:http://weahome.cn/article/ggssoe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部