CodeGym /Java Course /Module 3 a ɛto so abien /使用 Maven 部署項目

使用 Maven 部署項目

Module 3 a ɛto so abien
等級 2 , 課堂 4
開放

使用 maven-deploy-plugin

另一個非常有趣的話題是組裝包的自動部署。假設我們使用 Maven 構建了自己的庫。我們如何自動將其推送到本地、公司或中央 Maven 存儲庫?

Maven 為此有一個特殊的maven-deploy-plugin插件。例子:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-deploy-plugin</artifactId>
    	<version>2.5</version>
    	<configuration>
          <file>${project.build.directory}\${project.artifactId}-src.zip</file>
          <url>${project.distributionManagement.repository.url}</url>
          <repositoryId>${project.distributionManagement.repository.id}</repositoryId>
          <groupId>${project.groupId}</groupId>
          <artifactId>${project.artifactId}</artifactId>
          <version>${project.version}</version>
      	  <packaging>zip</packaging>
          <pomFile>pom.xml</pomFile>
    	</configuration>
  	</plugin>

通過這些設置,您可以將構建的庫作為有效包推送到 Maven 存儲庫。我們不會詳細分析這個過程,而是簡單地考慮一下這裡發生了什麼:

文件標籤指定一個文件,該文件將作為新庫推送到 Maven 存儲庫。

url標記是 Maven 存儲庫的路徑(local/corporate/...)。

repositoryId標記指定將進行部署的存儲庫的標識符。

groupIdartifactIdversion標籤定義了 Maven 存儲庫中的標準包標識。正是通過這三個參數,一個庫才能被唯一地識別。

打包標籤用於確保結果作為單個 zip 文件發送。如果您不指定它,那麼將有一個 jar 文件,即使您有多個 jar 文件。

pomFile標記是可選的,它允許您將另一個 pom.xml 發送到不包含隱藏或開銷數據的存儲庫。

使用 Maven 將 Web 應用程序部署到 Tomcat

Java Web 應用程序最流行的 Web 服務器是Apache Tomcat。當然,在 Maven 的幫助下,您可以將 war 文件直接部署到本地甚至遠程 Tomcat 服務器。

稍後我們將學習如何安裝和配置 Tomcat,但現在我們只涉及自動部署 Web 應用程序的主題。

步驟1。我們需要授予 Maven 訪問 Tomcat 服務器的權限。為此,打開Apache Tomcat 解壓目錄中的conf/tomcat-users.xml文件並添加manager-guimanager-script角色:

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <user username="admin" password="admin" roles="manager-gui,manager-script" />
</tomcat-users>

第二步。允許 Maven 訪問 Tomcat。為此,打開$MAVEN_HOME/conf/settings.xml文件並添加服務器:

<?xml version="1.0" encoding="UTF-8"?>
<settings ...>
  <servers>
	<server>
  	<id>TomcatServer</id>
  	<username>admin</username>
  	<password>admin</password>
	</server>
  </servers>
</settings>

第三步。我們添加了一個特殊的插件,用於將我們的應用程序自動部署到 Apache Tomcat。該插件稱為tomcat7-maven-plugin。順便說一下,它不是由 Maven 開發人員創建的,而是由 Tomcat 開發人員創建的,正如您可以從名稱中猜到的那樣。

	<build>
    	<plugins>
        	<plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
            	<configuration>
                    <url>http://localhost:8080/manager/text</url>
                    <server>TomcatServer</server>
                	<path>/simpleProject</path>
            	</configuration>
        	</plugin>
    	</plugins>
	</build>

在配置部分,指定:

  • url是tomcat運行的地址和manager/text的路徑
  • 服務器- 來自settings.xml文件的服務器 ID
  • path - 部署的應用程序可用的地址

部署管理命令:

mvn tomcat7:部署 將應用程序部署到 Tomcat
mvn tomcat7:取消部署 從 Tomcat 中刪除應用程序
mvn tomcat7:重新部署 重新部署應用

使用 Cargo 插件部署

另一個用於部署 Web 應用程序的有用且通用的插件是Cargo 插件。他知道如何使用不同類型的網絡服務器。以下是如何在 Apache Tomcat 中使用它進行部署:

<build>
    <plugins>
    	<plugin>
            <groupId>org.codehaus.cargo</groupId>
            <artifactId>cargo-maven2-plugin</artifactId>
        	<version>1.9.10</version>
        	<configuration>
            	<container>
                	<containerId>tomcat8x</containerId>
                    <type>installed</type>
                	<home>Insert absolute path to tomcat 7 installation</home>
            	</container>
            	<configuration>
                    <type>existing</type>
                    <home>Insert absolute path to tomcat 7 installation</home>
            	</configuration>
        	</configuration>
   	    </plugin>
    </plugins>
</build>

要在本地 Tomcat 上安裝 Web 應用程序,您只需運行以下命令:

mvn install
mvn cargo:deploy

如果我們要部署到遠程 Web 服務器,那麼我們將必須設置對此服務器的訪問權限。為此,您只需要在pom.xml中註冊它們:

<configuration>
	<container>
        <containerId>tomcat8x</containerId>
    	<type>remote</type>
	</container>
	<configuration>
    	<type>runtime</type>
    	<properties>
            <cargo.remote.username>admin</cargo.remote.username>
            <cargo.remote.password>admin</cargo.remote.password>
        	<cargo.tomcat.manager.url>http://localhost:8080/manager/text</cargo.tomcat.manager.url>
    	</properties>
	</configuration>
</configuration>

使用 IntelliJ IDEA 進行部署

Intellij IDEA 自己完成所有工作,您只需要安裝Tomcat即可。

步驟1。創建本地 Tomcat 配置:

第二步。然後選擇本地的Tomcat:

第三步。配置 Tomcat:

第四步。添加 Tomcat 文件夾的路徑。

第五步。我們將項目作為工件添加到 Tomcat。

為此,轉到部署選項卡並單擊右側的+按鈕。

就這樣。

對了,如果需要部署到遠程服務器,第二步選擇Remote Tomcat即可。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION