最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Eclipse創(chuàng)建Maven的Java WEB項目的兩種方式

 更新時間:2024年11月12日 09:11:20   作者:破昵稱想半天  
本文詳細(xì)介紹了如何在JDK 1.8、Maven 3.6.3和Eclipse 2017版本下創(chuàng)建Java Web項目,包括選擇archetype方式、配置Tomcat、設(shè)置為Web3.1、配置Maven編譯級別、修復(fù)Eclipse提示的錯誤、設(shè)置Maven源文件夾等步驟,需要的朋友可以參考下

前言

這里是基于jdk1.8,maven3.6.3,eclipse(2017版、氧氣版;也就是 eclipse-jee-oxygen-2-win32-x86_64 )的操作來示例。不同的版本可能會有一些差別,但整體上是不會有較大的變化。

1、第一種方式(選擇 archetype 方式)

通過選擇 archetype 來創(chuàng)建javaWeb項目

1.1、第一步:創(chuàng)建項目

1.2、第二步:配置jre

(可以忽略這一步的,為了防止其他亂七八糟的情況弄一下也好)。在這個eclipse版本下操作了這一步會自動的創(chuàng)建出 Maven 相關(guān)的源文件夾,所以操作一下這一步也沒什么壞處。

1.3、第三步:配置tomcat

創(chuàng)建 javaWeb 項目在開發(fā)和調(diào)試的時候大多數(shù)是用 tomcat 來進(jìn)行,在 Eclipse 中創(chuàng)建 Maven 項目并想使用 tomcat 進(jìn)行開發(fā)調(diào)試,本人知道的有兩種方式配置 tomcat;一種是外部下載好的tomcat,另外一種是使用Maven的tomcat插件。

這里介紹的是配置外部tomcat。配置外部的tomcat可以使用它內(nèi)置的一些jar包依賴,比如說 servlet-api、jsp-api 等等其他的一些jar包,有了這些 jar 包依賴就不用在pom.xml文件里面去寫依賴內(nèi)容了,也就是有了這些個依賴不用在pom.xml文件里寫相關(guān)的依賴內(nèi)容就可以解決servlet相關(guān)的java類缺失而引起的一些編譯或者運行的報錯了,同時在項目開發(fā)完了之后使用maven命令打包項目時也能避免把 servlet-api、jsp-api 等 jar 一起打包了,這樣就能避免打包后的項目和服務(wù)器上的 tomcat 有相同的 jar 包所引起的一些沖突問題。

1.4、第四步:設(shè)置為WEB3.1

  • 把servlet修改成3.1。打開web.xml -----> 用下面的內(nèi)容把項目中的web.xml給替換掉。

    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
    
      <!-- 這個節(jié)點要與不要都行,或者修改一下標(biāo)簽里面的文本內(nèi)容 -->
      <display-name>Archetype Created Web Application</display-name>
    </web-app>
    
  • 修改.settings文件夾下的 org.eclipse.wst.common.project.facet.core.xml 文件

1.5、第五步:配置Maven的編譯級別

Maven編譯級別指的是Maven項目構(gòu)建(build)過程中,‌用于指定Java源代碼編譯版本的設(shè)置。‌在這里所使用的 Maven 版本是maven3.6.3,它默認(rèn)的編譯級別是1.5,需要將這個默認(rèn)的級別更改為自己當(dāng)前安裝使用的 JDK 版本一樣的級別。Maven 插件的版本可能會隨著時間而更新,使用的時候應(yīng)該確保自己安裝和使用的 JDK 版本與 Maven 配置的編譯級別相匹配。下面介紹幾種配置Maven的編譯級別的方法。

1.5.1、第一種方法:使用 Maven 插件單獨為某個項目配置編譯級別

在pom.xml文件的<build>節(jié)點里面的<plugins>...<plugins>子節(jié)點來配置一個叫maven-compiler-plugin的插件;這個插件就是Maven用于編譯項目的源代碼用的。

<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	
	<modelVersion>4.0.0</modelVersion>
	
	<groupId>com.xxx.demo</groupId>
	<artifactId>maven_javaweb</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	
    <packaging>war</packaging>
    
	<name>xxx</name>
    <url>http://maven.apache.org</url>
	<description>xxx</description>

	<dependencies>
		...
        <!-- 這里的內(nèi)容是項目所需要的依賴,根據(jù)項目所需要的來編寫 -->
	</dependencies>

	<build>
		<plugins>
            <plugin>
                <!--  Maven 中用于編譯 Java 源代碼的插件 -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version><!-- 這個節(jié)點也可以不寫 -->
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding><!-- 這個節(jié)點也可以不寫 -->
                </configuration>
            </plugin>
        </plugins>
	</build> 
</project>

1.5.2、第二種方法:使用<properties>節(jié)點單獨為某個項目配置編譯級別

在pom.xml文件的<properties>節(jié)點里面添加配置

<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	
	<modelVersion>4.0.0</modelVersion>
	
	<groupId>com.xxx</groupId>
	<artifactId>artifact_xxx</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	
    <packaging>war</packaging>
    
	<name>xxx</name>
	<url>http://maven.apache.org</url>
	<description>xxx</description>
	
	<properties>
       <!-- 寫上下面所示的這3個子節(jié)點,就能設(shè)置當(dāng)前項目編譯級別 -->
	   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
       <maven.compiler.source>1.8</maven.compiler.source>
       <maven.compiler.target>1.8</maven.compiler.target>
	</properties>

	<dependencies>
		...
        <!-- 這里的內(nèi)容是項目所需要的依賴,根據(jù)項目所需要的來編寫 -->
	</dependencies>

	<build>
		...
        <!-- 沒有內(nèi)容這個節(jié)點可以不用寫 -->
	</build> 
</project>

1.5.3、在settings.xml文件中全局設(shè)置

在Maven的settings.xml文件中添加上一段代碼,如下所示

<!-- 首先我們要在settings.xml文件中找到<profiles>標(biāo)簽,然后在此標(biāo)簽內(nèi)部粘貼如下配置:-->

<profile>
  <id>jdk-1.8</id>
  <activation>
    <jdk>1.8</jdk>
  </activation>
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
  </properties>
</profile>

對Maven的編譯級別設(shè)置好了以后,設(shè)置一下eclipse對這個項目的編譯級別。

1.6、第六步:修復(fù)Eclipse提示的錯誤

1.7、第七步:設(shè)置Maven的源文件夾

這樣創(chuàng)建的maven項目,目錄可能是不全的。需要設(shè)置一下。

2、第二種方式(跳過archetype方式)

2.1、第一步:創(chuàng)建項目

2.2、第二步:創(chuàng)建web.xml

接下來創(chuàng)建需要創(chuàng)建web.xml文件。

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

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">

  <display-name>Archetype Created Web Application</display-name>
</web-app>

2.3、第三步:配置Maven的編譯級別

接下來配置Maven的編譯級別。

關(guān)于配置Maven的編譯級別更詳細(xì)的內(nèi)容在1.5章節(jié)有介紹。

2.4、第四步:配置tomcat

要想將項目運行跑起來的話,需要用到tomcat,這個tomcat可以是自己下載好的也可以是Maven的tomcat插件

如果是自己下載好的需要配置一下Library,如果是用Maven的tomcat插件需要添加一下servlet的依賴,不然在代碼里用Servlet相關(guān)的java類將會找不到,就會報錯。

2.4.1、使用Maven的tomcat插件方式

在pom.xml文件中添加如下的代碼

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>
  
  <groupId>com.xxx.demo</groupId>
  <artifactId>maven_javaweb</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <packaging>war</packaging>
    
  <name>xxx</name>
  <url>http://maven.apache.org</url>
  <description>xxx</description>
  
  <!-- 這一段是配置Maven編譯級別用的 -->
  <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <maven.compiler.source>1.8</maven.compiler.source>
      <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  
  <dependencies>
      <!-- 這里的內(nèi)容是項目所需要的依賴,根據(jù)項目所需要的來編寫 -->
      
      <dependency>
          <!-- 
              這里創(chuàng)建的javaweb項目是以一個簡單的servlet作為示例。

              由于是采用 Maven 的 tomcat 插件的方式,在編寫代碼的時候是缺失必要的javax.servlet.http.HttpServlet相關(guān)的類的,
              所以需要在Maven的pom.xml的文件中添加上servlet的相關(guān)依賴。
           -->
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
          <version>2.5</version>
          <!-- 
              如果不設(shè)置 <scope>provided</scope> 或者設(shè)置為 compile,在打包的時候會將 serlvet-api.jar 一起打包,
              然后將打包好的 war 包部署到服務(wù)器(另外一個電腦)中的 tomcat 里面,
              這樣會跟服務(wù)器中(另外一個電腦)的 tomcat 內(nèi)部存在的 servlet-api.jar 包沖突。會導(dǎo)致運行出問題。
          
              這個涉及到的是Maven的依賴作用范圍的知識,這里就不過多的介紹,有興趣自行去查找Maven的依賴作用范圍相關(guān)資料去學(xué)習(xí)。
          -->
          <scope>provided</scope>
      </dependency>
      
      <!-- 
          如果還用到JSP的話,還要加上JSP相關(guān)依賴,記得還是要加上 <scope>provided</scope> 
          總的來說,如果使用到tomcat自帶jar包,將項目中依賴作用范圍設(shè)置為:provided 其他依賴可以默認(rèn)
       -->
      <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>jsp-api</artifactId><!-- 用不到這個依賴就把這個依賴給刪掉。 -->
          <version>2.0</version>
          <scope>provided</scope>
      </dependency>
      
  </dependencies>
    
  <build>
      <plugins>
          <!-- 這個是tomcat插件 -->
  	      <plugin>
  	          <groupId>org.apache.tomcat.maven</groupId>
		      <artifactId>tomcat7-maven-plugin</artifactId>
		      <version>2.2</version>
  	          <configuration>
                  <!-- 配置Tomcat端口號,默認(rèn)為8080;雖然默認(rèn)是8080,但還是顯式地寫出來,也可以自定義端口號 -->
  	              <port>8081</port> 
                  <!-- 配置應(yīng)用的訪問路徑,默認(rèn)為 ROOT 即 "/";雖然默認(rèn)是"/",但還是顯式地寫出來,也可以自定義訪問路徑 -->
  	              <path>/</path> 
                  <!-- URL按UTF-8進(jìn)行編碼,這樣就解決了中文參數(shù)亂碼。 -->
  	              <uriEncoding>UTF-8</uriEncoding>
  	          </configuration>
  	      </plugin>
          <!-- <plugin>
              <groupId>org.apache.maven.plugins</groupId>
		      <artifactId>maven-war-plugin</artifactId>
		      <version>2.1-alpha-2</version>
              <configuration></configuration>
          </plugin> -->
      </plugins>
  </build>
  
</project>

注意:

  • 由于是采用 Maven 的 tomcat 插件作為開發(fā)調(diào)試使用的服務(wù)器,在編寫代碼的時候是缺失 servlet 相關(guān)類庫的(也就是缺失 servlet 相關(guān)依賴),所以需要在Maven的pom.xml的文件中添加上servlet的相關(guān)依賴。在添加 servlet 相關(guān)依賴的時候要注意將依賴作用范圍設(shè)為provided。如下圖所示:

  • tomcat 的插件可以在 tomcat 的官網(wǎng)上找到;http://tomcat.apache.org/maven-plugin.html,它里面現(xiàn)在有兩個版本,分別是tomcat6、tomcat7。這些版本都比較老舊,可能在項目開發(fā)中并不適用,所以推薦在eclipse、IDEA等開發(fā)工具中配置使用外部下載好的tomcat。

  • 在eclipse中將tomcat插件運行起來

2.4.2、配置外部下載好的tomcat

推薦使用配置外部下載好的tomcat,因為外部下載好的 tomcat 可以自由的選擇版本;使用插件的方式,那些tomcat的版本版本都太低了,可能會出現(xiàn)各種問題,并不一定適合項目所需要。前面1.3章節(jié)有介紹怎樣配置外部下載好的tomcat。點擊查看

3、介紹一下命令的方式創(chuàng)建Maven項目。

3.1、創(chuàng)建普通的 java 項目

使用 maven-archetype-quickstart 可以快速創(chuàng)建一個簡單的 Maven 項目(就是一個普通的 java 項目,一般可以用在簡單的 demo 或者用于測試一下代碼運行情況。其他用途也行,只要合適就好。)。只需要用戶提供項目最基本的信息,就能生成項目的基本結(jié)構(gòu)及 POM 文件。

mvn archetype:generate -DgroupId=net.biancheng.www -DartifactId=helloMaven -Dversion=0.0.1-SNAPSHOT -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

參數(shù)說明:

  • -DgroupId: 項目組 ID,通常為組織名或公司網(wǎng)址的反寫。
  • -DartifactId: 項目名。
  • -Dversion: 版本
  • -DarchetypeArtifactId: 指定 ArchetypeId,maven-archetype-quickstart 用于快速創(chuàng)建一個簡單的 Maven 項目。
  • -DinteractiveMode: 是否使用交互模式。

3.2、創(chuàng)建一個簡單的 Web 應(yīng)用

上面介紹的 Maven 項目是普通的 java 項目打包類型是 JAR ,但在現(xiàn)今的互聯(lián)網(wǎng)時代,我們創(chuàng)建的大部分應(yīng)用程序都是 Web 應(yīng)用,在 Java 中 Web 應(yīng)用的打包方式是 WAR。使用 Maven 的 maven-archetype-webapp 模板可以創(chuàng)建一個簡單的 Web 應(yīng)用。

mvn archetype:generate -DgroupId=net.biancheng.www -DartifactId=mavenWeb -Dversion=0.0.1-SNAPSHOT -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

  • -DgroupId: 項目組 ID,通常為組織名或公司網(wǎng)址的反寫。
  • -DartifactId: 項目名。
  • -Dversion: 版本
  • -DarchetypeArtifactId: 指定 ArchetypeId,maven-archetype-webapp 模板可以創(chuàng)建一個簡單的 Web 應(yīng)用。
  • -DinteractiveMode: 是否使用交互模式。

創(chuàng)建完成后里面的一些目錄是不全的,根據(jù)需要自行加上。

總結(jié)

到此這篇關(guān)于使用Eclipse創(chuàng)建Maven的Java WEB項目的兩種方式的文章就介紹到這了,更多相關(guān)Eclipse創(chuàng)建Maven Java WEB項目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mybatis如何自動生成數(shù)據(jù)庫表結(jié)構(gòu)總結(jié)

    Mybatis如何自動生成數(shù)據(jù)庫表結(jié)構(gòu)總結(jié)

    這篇文章主要給大家介紹了關(guān)于Mybatis如何自動生成數(shù)據(jù)庫表結(jié)構(gòu)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Mybatis具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Java練手小項目實現(xiàn)一個項目管理系統(tǒng)

    Java練手小項目實現(xiàn)一個項目管理系統(tǒng)

    讀萬卷書不如行萬里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Java實現(xiàn)一個項目管理系統(tǒng),大家可以在過程中查缺補(bǔ)漏,提升水平
    2021-10-10
  • Spring Security中successHandler無效問題及解決

    Spring Security中successHandler無效問題及解決

    這篇文章主要介紹了Spring Security中successHandler無效問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Java Retrofit源碼層深入分析

    Java Retrofit源碼層深入分析

    這篇文章主要介紹了Java Retrofit源碼層分析,Retrofit是一個RESTful的HTTP網(wǎng)絡(luò)請求框架的封裝,網(wǎng)絡(luò)請求的工作本質(zhì)上是OkHttp完成,而Retrofit僅負(fù)責(zé)網(wǎng)絡(luò)請求接口的封裝
    2023-01-01
  • Java跳出當(dāng)前的多重嵌套循環(huán)的五種方法

    Java跳出當(dāng)前的多重嵌套循環(huán)的五種方法

    在Java編程中,跳出多重嵌套循環(huán)可以使用break語句、標(biāo)號與break組合、return語句、標(biāo)志變量和異常處理五種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • SpringBoot統(tǒng)一響應(yīng)和統(tǒng)一異常處理詳解

    SpringBoot統(tǒng)一響應(yīng)和統(tǒng)一異常處理詳解

    在開發(fā)Spring Boot應(yīng)用時,處理響應(yīng)結(jié)果和異常的方式對項目的可維護(hù)性、可擴(kuò)展性和團(tuán)隊協(xié)作有著至關(guān)重要的影響,統(tǒng)一結(jié)果返回和統(tǒng)一異常處理是提升項目質(zhì)量的關(guān)鍵策略之一,所以本文給大家詳細(xì)介紹了SpringBoot統(tǒng)一響應(yīng)和統(tǒng)一異常處理,需要的朋友可以參考下
    2024-08-08
  • 聊聊SpringBoot的@Scheduled的并發(fā)問題

    聊聊SpringBoot的@Scheduled的并發(fā)問題

    這篇文章主要介紹了聊聊SpringBoot的@Scheduled的并發(fā)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Spring事務(wù)失效的問題及解決方案

    Spring事務(wù)失效的問題及解決方案

    本文詳細(xì)分析了Spring事務(wù)失效的原因,并提供了一個解決方案,在代碼中,事務(wù)傳播屬性設(shè)置為REQUIRES_NEW解決了事務(wù)失效的問題,確保了日志記錄的操作不會影響主事務(wù)的回滾,同時,文中還總結(jié)了各種事務(wù)傳播屬性的含義和使用場景
    2025-11-11
  • java 實現(xiàn)當(dāng)前時間加減30分鐘的時間代碼

    java 實現(xiàn)當(dāng)前時間加減30分鐘的時間代碼

    這篇文章主要介紹了java 實現(xiàn)當(dāng)前時間加減30分鐘的時間代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • SpringBoot使用責(zé)任鏈模式優(yōu)化業(yè)務(wù)邏輯中的if-else代碼

    SpringBoot使用責(zé)任鏈模式優(yōu)化業(yè)務(wù)邏輯中的if-else代碼

    在開發(fā)過程中,我們經(jīng)常會遇到需要根據(jù)不同的條件執(zhí)行不同的邏輯的情況,我們可以考慮使用責(zé)任鏈模式來優(yōu)化代碼結(jié)構(gòu),使得代碼更加清晰、可擴(kuò)展和易于維護(hù)
    2023-06-06

最新評論

南康市| 响水县| 特克斯县| 张掖市| 濮阳市| 眉山市| 惠水县| 碌曲县| 格尔木市| 东光县| 锡林郭勒盟| 博湖县| 庆阳市| 九寨沟县| 大竹县| 黄平县| 醴陵市| 安龙县| 江油市| 芜湖市| 肥东县| 莎车县| 翁源县| 浮山县| 德昌县| 张家港市| 视频| 赤水市| 洛阳市| 香港 | 梁山县| 丘北县| 休宁县| 富蕴县| 新密市| 石泉县| 明水县| 青神县| 左云县| 泰安市| 永川市|