Sử dụng maven-triển khai-plugin

Và một chủ đề rất thú vị khác là triển khai tự động gói đã lắp ráp. Giả sử chúng ta xây dựng thư viện của riêng mình bằng Maven. Làm cách nào để chúng tôi tự động đẩy nó vào kho lưu trữ Maven cục bộ, công ty hoặc trung tâm?

Maven có một plugin maven-deploy-plugin đặc biệt cho việc này . Ví dụ:

    <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>

Với các cài đặt này, bạn có thể đẩy thư viện đã xây dựng vào kho lưu trữ Maven dưới dạng gói hợp lệ. Chúng tôi sẽ không phân tích chi tiết quá trình này mà xem xét ngắn gọn những gì đang xảy ra ở đây:

Thẻ tệp chỉ định tệp sẽ được đẩy vào kho lưu trữ Maven dưới dạng thư viện mới.

Thẻ url là đường dẫn đến kho lưu trữ Maven (local/corporate/…).

Thẻ repositoryId chỉ định mã định danh của kho lưu trữ mà việc triển khai sẽ được thực hiện.

Các thẻ groupId , artifactId , phiên bản xác định nhận dạng gói tiêu chuẩn trong kho lưu trữ Maven. Chính nhờ ba tham số này mà một thư viện có thể được xác định duy nhất.

Thẻ đóng gói được sử dụng để đảm bảo rằng kết quả được gửi dưới dạng một tệp zip. Nếu bạn không chỉ định nó, thì sẽ có một tệp jar, ngay cả khi bạn có nhiều tệp jar.

Thẻ pomFile là tùy chọn và cho phép bạn gửi một tệp pom.xml khác đến kho lưu trữ không chứa dữ liệu ẩn hoặc dữ liệu chung.

Triển khai một ứng dụng web cho Tomcat bằng Maven

Máy chủ web phổ biến nhất cho các ứng dụng web Java là Apache Tomcat . Và tất nhiên, với sự trợ giúp của Maven, bạn có thể triển khai các tệp chiến tranh trực tiếp đến máy chủ Tomcat cục bộ hoặc thậm chí từ xa.

Chúng ta sẽ tìm hiểu cách cài đặt và định cấu hình Tomcat sau, nhưng bây giờ chúng ta sẽ chỉ đề cập đến chủ đề triển khai tự động ứng dụng web của chúng ta.

Bước một. Chúng tôi cần cấp cho Maven quyền truy cập vào máy chủ Tomcat. Để thực hiện việc này, hãy mở tệp conf/Tomcat-users.xml trong thư mục nơi Apache Tomcat được giải nén và thêm vai trò 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>

Bước hai. Cho phép Maven truy cập vào Tomcat. Để thực hiện việc này, hãy mở tệp $MAVEN_HOME/conf/settings.xml và thêm máy chủ:

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

Bước thứ ba. Chúng tôi thêm một phần bổ trợ đặc biệt để tự động triển khai ứng dụng của mình cho Apache Tomcat. Plugin được gọi là tomcat7-maven-plugin . Nhân tiện, nó không được tạo bởi các nhà phát triển Maven, mà bởi các nhà phát triển Tomcat, như bạn có thể đoán từ cái tên.

	<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>

Trong phần cấu hình, chỉ định:

  • url là địa chỉ nơi Tomcat đang chạy và đường dẫn đến trình quản lý/văn bản
  • máy chủ - id máy chủ từ tệp settings.xml
  • đường dẫn - địa chỉ nơi ứng dụng được triển khai sẽ khả dụng

Các lệnh quản lý triển khai:

mvn tomcat7:triển khai Triển khai ứng dụng lên Tomcat
mvn tomcat7: không triển khai Xóa ứng dụng khỏi Tomcat
mvn tomcat7: triển khai lại Triển khai lại ứng dụng

Triển khai với Cargo Plugin

Một plugin hữu ích và linh hoạt khác để triển khai các ứng dụng web là Cargo Plugin . Anh ấy biết cách làm việc với các loại máy chủ web khác nhau. Đây là cách triển khai với nó trong 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>

Để cài đặt ứng dụng web trên Tomcat cục bộ của bạn, bạn chỉ cần chạy các lệnh:

mvn install
mvn cargo:deploy

Nếu chúng tôi muốn triển khai tới một máy chủ web từ xa, thì chúng tôi sẽ phải thiết lập quyền truy cập vào máy chủ này. Để làm điều này, bạn chỉ cần đăng ký chúng trong 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>

Triển khai với IntelliJ IDEA

Intellij IDEA tự thực hiện tất cả công việc, tất cả những gì bạn cần là một Tomcat đã cài đặt .

Bước một. Tạo cấu hình Tomcat cục bộ:

Bước hai. Sau đó chọn Tomcat cục bộ:

Bước thứ ba. Định cấu hình Tomcat:

Bước bốn. Thêm đường dẫn đến thư mục Tomcat.

Bước năm. Chúng tôi thêm dự án của mình dưới dạng một vật phẩm vào Tomcat.

Để thực hiện việc này, hãy chuyển đến tab Triển khai và nhấp vào nút + ở bên phải .

Đó là tất cả.

Nhân tiện, nếu bạn cần triển khai đến một máy chủ từ xa, chỉ cần chọn Remote Tomcat ở bước thứ hai.