1. 程式人生 > >使用maven的tomcat外掛部署專案

使用maven的tomcat外掛部署專案

從網上學習別人的框架,發現框架的部署教程中用的maven啟動的專案,第一次知道這種方法,從網上找了很多部落格,感覺寫的都不太明白,所以寫下我目前知道的。

1、通過git下載原始碼
2、建立資料庫renren-security,資料庫編碼為UTF-8
3、執行doc/db.sql檔案,初始化資料
4、修改db.properties檔案,更新MySQL賬號和密碼
5、Eclipse、IDEA執行【clean package tomcat7:run】命令,即可執行專案
6、專案訪問路徑:http://localhost
7、非Maven方式啟動,則預設訪問路徑為:http://localhost:8080/renren-security
8、賬號密碼:admin/admin

剛開始看了上面的部署過程,發現第五條根本不知道在哪執行啊。。。
經過查詢知道通過maven部署專案有兩種方式,都可以脫離eclipse,使用命令列執行mvn命令:
第一種方式是使用maven的tomcat外掛,這種方式不需要本地安裝的tomcat,使用外掛內建的tomcat在本地啟動專案,預設啟用8080埠,這種方式只需要在工程的pom.xml檔案中按照如下配置:
注意Java-version要與自己的jdk版本匹配

<build>
    <plugins>
        <plugin>
            <groupId
>
org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>${java-version}</source> <target>${java-version}</target> <!-- true:跳過測試 -->
<skip>true</skip> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build>

然後在pom.xml所在的目錄下開啟命令視窗(shift+目錄下右鍵選單),執行mvn tomcat:run就可以執行專案,也可以按照第二種方法介紹的在eclipse中執行mvn命令。

第二種方式是用本地安裝的tomcat,從我目前知道的這種方式可以實現遠端部署專案,意思就是在伺服器的tomcat配置檔案裡為maven配置一個賬號,就可以在本地使用maven命令把專案部署到正在執行的伺服器的tomcat下面,我安裝的tomcat8, 埠用的8090

  • tomcat配置
    在目標tomcat的配置檔案(conf/tomcat-users.xml)中為maven新增賬號
<tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="manager"/>
  <role rolename="manager-gui"/>
  <role rolename="manager-script" />
  <role rolename="admin-gui"/>
  <user username="tomcat" password="tomcat" roles="tomcat,manager,
      manager-gui,manager-script,admin-gui" />
</tomcat-users>
  • maven配置(我後來測試這裡不配置也可以,後面的pom.xml有地方配置)
    具體的配置maven安裝、配置環境變數過程就不寫了,網上也有很多

給maven新增tomcat的使用者,在maven安裝目錄下的conf/settings.xml檔案中servers標籤下按照如下配置

<servers>
    <server>
       <id>tomcat</id>
       <username>tomcat</username>
       <password>tomcat</password>
    </server>
</servers>
  • 專案pom.xml

    注意Java-version要與自己的jdk版本匹配

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>${java-version}</source>
            <target>${java-version}</target>
            <!-- true:跳過測試 -->
            <skip>true</skip>
            <encoding>UTF-8</encoding>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <configuration>
            <encoding>UTF-8</encoding>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>tomcat-maven-plugin</artifactId>
        <version>1.1</version>
        <configuration>
            <path>/renren-security</path>
            <port>8090</port>
            <uriEncoding>UTF-8</uriEncoding>
            <url>http://localhost:8090/manager/text</url>
            <server>tomcat</server>
            <username>tomcat</username>
            <password>tomcat</password>
        </configuration>
    </plugin>
</plugins>

上面的兩個plugin和第一種方法一樣,主要是第三個plugin:
path:是tomcat上的專案名稱(我的就是http://localhost:8090/renren-security
port:是埠,這個地方可以不用配置,第一種方法應該可以通過這個修改埠號(我沒試)
url:寫到text,網上也有到html的(我試了不行)
下面三個就是目標tomcat的使用者名稱和密碼了,沒有這個就沒許可權在目標tomcat上部署專案

  • mvn命令執行
    上面配置完成之後可以在工程pom.xml目錄下開啟命令列視窗
D:\Workspaces\renren-security>mvn tomcat:run

執行tomcat:run命令依然會按照預設的8080埠啟動內建tomcat外掛部署專案

>mvn install

install命令會編譯出classs檔案、jar檔案和專案war包

>mvn clean 

clean命令會把install生成的檔案全部清除

>mvn tomcat:deploy

deploy在install生成war包之後執行,將專案部署到目標tomcat(啟動狀態),如果報錯很可能是maven賬號沒有配置好,沒有許可權

>mvn tomcat:undeploy

將專案從執行的tomcat上解除安裝

  • eclipse執行

這裡寫圖片描述

這裡寫圖片描述

專案就可以正常運行了
以後執行可以直接執行maven build
這裡寫圖片描述

  • 遇到的錯誤

這裡寫圖片描述

-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.

如果出現上面的錯誤就是下面的這條引數沒加上

-Dmaven.multiModuleProjectDirectory=$M2_HOME

同事遇到了下面這個錯誤,說明上面圖片JRE home選擇的不是jdk目錄而是jre目錄

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

相關推薦

使用maven的tomcat外掛部署專案

從網上學習別人的框架,發現框架的部署教程中用的maven啟動的專案,第一次知道這種方法,從網上找了很多部落格,感覺寫的都不太明白,所以寫下我目前知道的。 1、通過git下載原始碼 2、建立資料庫renren-security,資料庫編碼為UTF-8 3、執

使用myeclipse tomcat外掛部署web專案時報錯 an internal error occurred during add deployment . java.lang.nullpointerexception

問題描述: 使用myeclipse10的tomcat外掛部署web專案時,首次部署。實際部署到了tomcat/webapps目錄下且tomcat啟動成功,但是eclipse報錯"An internal error occurred during: "Add Deployment"  : 

Maven專案配置tomcat8外掛實現專案自動部署到遠端linux伺服器

1.tomcat配置在tomcat目錄中的conf目錄下找到tomcat-users.xml配置檔案,然後搜尋tomcat-users,進行tomcat使用者的角色和許可權配置,如下:<tomcat-users> <role rolename="ma

MAVEN外掛部署JAVA專案到遠端容器

通常情況下,程式開發完成後部署到線上Linux伺服器,可能需要經歷打包、將包檔案傳到伺服器、SSH連上伺服器、敲命令啟動程式等一系列繁瑣的步驟。實際上這些步驟都可以通過Maven的一個外掛wagon-maven-plugin來自動完成。 檔案上傳到伺服器 Maven專

idea 使用maven外掛進行熱部署專案(解決修改後重新打包無法起效問題)

問題:平時我們開發完成需要進行專案部署到伺服器,通常做法手動打包,在linux下上傳並部署。這種在單個專案部署還好,當專案中分很多子專案時,這是一件頭疼事情。 解決:maven提供外掛進行在idea中直接部署。 步驟1:開啟Tomcat許可權。配置D:\apach

web專案通過外掛部署到tomcat伺服器上

很多時候,公司內部的web框架在eclipse上不能直接add到tomcat上,需要通過tomcat外掛通過配置去部署web專案1.根據eclipse版本下載外掛2.將下載的外掛解壓放在eclipse安裝目錄下3.重啟開啟eclipse,這一次開啟會比較慢,開啟後會發現,ec

java 淺析跨域問題以及如何使用Cors解決前後端分離部署專案所遇到的跨域問題

隨著時間的推移,前後端分離的開發形式越來越流行,使用的公司也越來越多。但是這種開發形式也會帶來一個問題。那就是跨域問題。 什麼是跨域 跨域,指的是瀏覽器不能執行其他網站的指令碼。它是由瀏覽器的同源策略造成的,是瀏覽器對javascript施加的安全限制。

linux遠端部署專案

. 到處war包 選擇匯出的專案,路徑,finsh 安裝:filezilla.exe 軟體,或其它的上傳檔案的軟體 輸入如主機id,使用者名稱,密碼,埠,點選連線, 下載:xshell工具, 安裝tomcat。jdk,資料庫, war包到tomca

Tomcat部署專案及Tomcat做成系統自啟服務

1.專案部署 目錄 1、下載 Tomcat 伺服器 2、啟動並部署 Tomcat 伺服器 3、Tomcat 的目錄結構 4、部署專案的第一種方法(專案直接放入 webapps 目錄中) 5、部署專案的第二種方法(修改 conf/server.xml 檔案 )

Linux下用root許可權新增使用者,並給使用者或使用者組指定目錄的讀寫許可權(比如:tomcat檔案的讀寫許可權,可以用於新使用者部署專案)

目的: 在linux環境中為了安全起見,不能讓所有專案都用root部署(防止root許可權過大,對重要檔案的誤操作),所以新加使用者或使用者組,對新使用者或使用者組授予部分檔案操作的許可權。 1.建立使用者newuser,並設定密碼(預設連帶建立newuser組) # useradd n

在ubuntu18.04上部署專案時遇到的問題總結

因為在實驗室中,有幾臺空閒的機子,我便選了一臺準備做一個本地的伺服器,因為買的阿里雲學生機和之前用於翻牆的機子感覺都不太順手,阿里的學生機配置稍低,翻牆用的伺服器延遲太高。開始在centos和ubuntu中選,因為個人偏好ubuntu,所以裝了ubuntu的機子。 1.安裝JD

阿里雲配置伺服器部署專案

最近雙11來了,作為程式設計師,終於買了個阿里雲ecs伺服器,主要便宜。 對於一個前端開發人來說伺服器,專案部署好像搭不上邊,但是對於愛好者,可以瞭解一下。剛剛買完不知道怎麼搭建。官方給的解釋太繁瑣,不知道有沒有小夥伴跟我一樣的感受。 好了話不多說,直接開掛,看截圖。   1.這是剛剛購買的

Resin在Linux下部署專案

1 檢視jdk是否正常安裝(1.7版本)  java -version 沒有安裝則先安裝jdk 2 將resin-4.0.36.tar.gz壓縮檔案放到opt資料夾下並解壓   解壓 tar zxvf resin-4.0.36.tar.gz 3

Centos7作業系統下部署專案

Y16 本部落格借鑑於其他部落格而作,有地方不同。大家可視自身所需情況瞭解。 借鑑部落格: http://blog.51cto.com/51reboot/2105415 在Centos7下部署專案,需要先部署相關環境。在此配置環境版本: Remote:Centos7.

Idea部署專案到tomcat時沒有artifacts

一、首先建立一個用gradle構建的專案:File-->new --->Project 勾選Java和web-->一路next建立完專案 二、配置tomca:進入Edit Configurations -->左上角+號,tomcat Service -->lo

Tomcat部署專案的三種方式

Tomcat的專案部署方式有以下三種: 1.直接把專案複製到Tomcat安裝目錄的webapps目錄中,這是最簡單的一種Tomcat專案部署的方法,也是初學者最常用的方法。 2.在tomcat安裝目錄中有一個conf資料夾,開啟此資料夾,其中包含配置檔案server.xml,開啟配置檔案

tomcat手動部署專案

為什麼要直接在tomcat上部署專案? 因為tomcat啟動只佔很小的記憶體,而啟動eclipse部署專案佔用的記憶體相對較大。 步驟一: 匯出專案war包   為什麼是war包呢? jar包是java打的包,war包可以理解為javaweb打的包,這樣會比較好記。

linux伺服器部署javaweb環境,並部署專案到tomcat(詳細教程二)

      上一篇,我們已經將mysql資料庫、jdk、tomcat等部署完畢。(什麼?沒有安裝?請移步上一篇:linux伺服器部署javaweb環境,並部署專案到tomcat(詳細教程一),慢走,不送 ╮( ̄▽ ̄)╭)閒話不多說,開始部署我們的web專案。 五、部署web專案  

linux伺服器部署javaweb環境,並部署專案到tomcat(詳細教程一)

      寫完一些東西,想放到伺服器上測試一下。而liunx伺服器也是第一次接觸,去網上百度了一些部署教程,可能是我知識儲備過於簡陋,嘗試了諸多次才將資料庫、jdk、tomcat部署完成。(本人一名java小白,嘗試著寫的第一篇部落格,如有不妥之處,歡迎諸位指正。) 一、安裝mysql

tomcat部署專案 以及 如何去掉專案名稱

 1.直接將web專案檔案拷貝到webapps目錄中     Tomcat的webapps目錄是tomcat預設的應用目錄,伺服器啟動時,會載入這個目錄下的應用。將打包的war包放到目錄下,伺服器啟動時會自 動解開war包。並在該目錄下產生一個