ใช้ 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 (ภายใน/องค์กร/…)
แท็กrepositoryIdระบุตัวระบุของที่เก็บที่จะปรับใช้
groupId , artifactId , แท็กเวอร์ชันกำหนดการระบุแพ็กเกจมาตรฐานในที่เก็บ Maven โดยพารามิเตอร์ทั้งสามนี้ทำให้ไลบรารีสามารถระบุได้โดยไม่ซ้ำกัน
แท็กบรรจุภัณฑ์ใช้เพื่อให้แน่ใจว่าผลลัพธ์ถูกส่งเป็นไฟล์ zip ไฟล์เดียว หากคุณไม่ระบุ จะมีไฟล์ jar หนึ่งไฟล์ แม้ว่าคุณจะมีไฟล์ jar หลายไฟล์ก็ตาม
แท็กpomFileเป็นตัวเลือกและอนุญาตให้คุณส่ง pom.xml อื่นไปยังที่เก็บที่ไม่มีข้อมูลที่ซ่อนอยู่หรือโอเวอร์เฮด
การปรับใช้เว็บแอปพลิเคชันกับ Tomcat โดยใช้ Maven
เว็บเซิร์ฟเวอร์ที่ได้รับความนิยมสูงสุดสำหรับเว็บแอปพลิเคชัน Java คือApache Tomcat และแน่นอน ด้วยความช่วยเหลือจาก Maven คุณสามารถปรับใช้ไฟล์สงครามได้โดยตรงไปยังเซิร์ฟเวอร์ Tomcat ภายในหรือแม้แต่ระยะไกล
เราจะเรียนรู้วิธีติดตั้งและกำหนดค่า Tomcat ในภายหลัง แต่ตอนนี้เราจะพูดถึงหัวข้อการปรับใช้เว็บแอปพลิเคชันของเราโดยอัตโนมัติเท่านั้น
ขั้นตอนแรก. เราจำเป็นต้องให้ Maven เข้าถึงเซิร์ฟเวอร์ Tomcat ในการดำเนินการนี้ ให้เปิด ไฟล์ conf/tomcat-users.xmlในไดเร็กทอรีที่แตก Apache Tomcat และเพิ่ม บทบาท manager-guiและmanager-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 และพาธไปยังผู้จัดการ/ข้อความ
- เซิร์ฟเวอร์ - รหัสเซิร์ฟเวอร์จาก ไฟล์ settings.xml
- เส้นทาง - ที่อยู่ที่แอปพลิเคชันปรับใช้จะพร้อมใช้งาน
คำสั่งการจัดการการปรับใช้:
mvn tomcat7:ปรับใช้ | ปรับใช้แอปพลิเคชันกับ Tomcat |
---|---|
mvn tomcat7:ยกเลิกการปรับใช้ | ลบแอปพลิเคชันออกจาก Tomcat |
mvn tomcat7: ปรับใช้ใหม่ | ปรับใช้แอปพลิเคชันอีกครั้ง |
ปรับใช้กับ Cargo Plugin
ปลั๊กอินที่มีประโยชน์และใช้งานได้หลากหลายสำหรับการปรับใช้เว็บแอปพลิเคชันคือCargo Plugin เขารู้วิธีทำงานกับเว็บเซิร์ฟเวอร์ประเภทต่างๆ นี่คือวิธีการปรับใช้กับ 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 ในเครื่องของคุณ คุณเพียงแค่เรียกใช้คำสั่ง:
mvn install
mvn cargo:deploy
หากเราต้องการปรับใช้กับเว็บเซิร์ฟเวอร์ระยะไกล เราจะต้องตั้งค่าสิทธิ์การเข้าถึงเซิร์ฟเวอร์นี้ ในการทำเช่นนี้ คุณเพียงแค่ต้องลงทะเบียนใน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 ที่ติดตั้งไว้
ขั้นตอนแรก. สร้างการกำหนดค่า Tomcat ในเครื่อง:
ขั้นตอนที่สอง จากนั้นเลือก Tomcat ในเครื่อง:
ขั้นตอนที่สาม การกำหนดค่า Tomcat:
ขั้นตอนที่สี่ เพิ่มเส้นทางไปยังโฟลเดอร์ Tomcat
ขั้นตอนที่ห้า เราเพิ่มโครงการของเราเป็นสิ่งประดิษฐ์ใน Tomcat
ในการดำเนินการนี้ ให้ไปที่แท็บการปรับใช้ แล้วคลิกปุ่ม+ ทางด้านขวา
นั่นคือทั้งหมด
อย่างไรก็ตาม หากคุณต้องการปรับใช้กับเซิร์ฟเวอร์ระยะไกล ให้เลือก Remote Tomcat ในขั้นตอนที่สอง
GO TO FULL VERSION