git-commit-id-maven-plugin เป็นปลั๊กอินที่ค่อนข้างคล้ายกับปลั๊กอิน Build Number Maven แต่เนื่องจากปลั๊กอิน Build Number ในขณะที่ฉันเริ่มปลั๊กอินนี้รองรับเฉพาะ CVS และ SVN เท่านั้น จึงต้องดำเนินการบางอย่าง ฉันต้องพัฒนาปลั๊กอินดังกล่าวเวอร์ชัน Git อย่างรวดเร็ว สำหรับผู้ที่ไม่ทราบปลั๊กอิน โดยพื้นฐานแล้วจะช่วยคุณในงานต่อไปนี้และตอบคำถามที่เกี่ยวข้อง
หากคุณสนใจกรณีการใช้งานต่างๆ มากกว่า โปรดอ่านรายละเอียดเพิ่มเติมได้ตามสบาย
GitCommitIdMojo.java
เป็น Javadocปลั๊กอิน มีให้จาก Maven Central (ดูที่นี่) ดังนั้นคุณไม่จำเป็นต้องกำหนดค่าพื้นที่เก็บข้อมูลเพิ่มเติมใดๆ เพื่อใช้ปลั๊กอินนี้
คำอธิบายโดยละเอียดเกี่ยวกับการใช้ปลั๊กอินมีอยู่ในเอกสารการใช้ปลั๊กอิน สิ่งที่คุณต้องทำในการตั้งค่าพื้นฐานคือการรวมคำจำกัดความของปลั๊กอินนั้นไว้ใน pom.xml
ของคุณ สำหรับผู้ใช้ขั้นสูง เราได้เตรียมคำแนะนำเพื่อให้ภาพรวมโดยย่อของการกำหนดค่าขั้นสูงเพิ่มเติม... อ่านต่อ!
เวอร์ชันใหม่กว่า (5.xx หรือใหม่กว่า) มีให้ผ่านทาง
< groupId >io.github.git-commit-id</ groupId >
< artifactId >git-commit-id-maven-plugin</ artifactId >
เวอร์ชันเก่า (4.xx หรือเก่ากว่า) มีให้ผ่าน:
< groupId >pl.project13.maven</ groupId >
< artifactId >git-commit-id-plugin</ artifactId >
เวอร์ชันปัจจุบันคือ 9.0.0 (รายการเปลี่ยนแปลง)
คุณสามารถตรวจสอบเวอร์ชันที่มีอยู่ได้โดยไปที่ search.maven.org แม้ว่าการใช้เวอร์ชันใหม่ล่าสุดจะเป็นตัวเลือกที่ดีที่สุดก็ตาม
นี่คือภาพรวมของความเข้ากันได้ของปลั๊กอินปัจจุบันกับ Java
เวอร์ชันปลั๊กอิน | เวอร์ชันจาวาที่จำเป็น |
---|---|
2.1.X | จาวา 1.6 |
2.2.X | จาวา 1.7 |
3.XX | จาวา 1.8 |
4.XX | จาวา 1.8 |
5.XX | ชวา 11 |
6.XX | ชวา 11 |
7.XX | ชวา 11 |
8.XX | ชวา 11 |
9.XX | ชวา 11 |
แม้ว่าปลั๊กอินนี้จะพยายามเข้ากันได้กับทุกเวอร์ชันของ Maven แต่ก็มีข้อจำกัดที่ทราบบางประการสำหรับเวอร์ชันเฉพาะ ต่อไปนี้เป็นรายการที่พยายามสรุปความทันสมัยในปัจจุบัน:
เวอร์ชันปลั๊กอิน | เวอร์ชัน Maven ที่จำเป็นขั้นต่ำ |
---|---|
2.1.X | มาเวน 2.2.1 สูงถึง v2.1.13; Maven 3.1.1 สำหรับ 2.1.X ในภายหลัง |
2.2.X | มาเวน 3.1.1 สูงถึง v2.2.3; Maven 3.0 สำหรับ 2.2.X ในภายหลัง |
3.XX | มาเวน 3.0 |
4.XX | มาเวน 3.0 |
5.XX | มาเวน 3.1.0-อัลฟา-1 |
6.XX | มาเวน 3.1.0-อัลฟา-1 |
7.XX | มาเวน 3.2.5 |
8.XX | มาเวน 3.2.5 |
9.XX | มาเวน 3.6.3 |
การพลิกตารางเป็น maven: โปรดทราบว่าในทางทฤษฎี maven 4.X ควรสนับสนุนปลั๊กอิน maven 3 ทั้งหมด ปลั๊กอินถูกจัดส่งครั้งแรกพร้อมการรองรับ maven 3 ในเวอร์ชัน v2.1.14 (ต้องการ maven เวอร์ชัน 3.1.1) ดังนั้น v2.1.14 ควรเป็นเวอร์ชันแรกที่รองรับ เริ่มต้นด้วย 6.XX เท่านั้น ปลั๊กอินนี้ได้รับการทดสอบจริงกับ 4.0.0-alpha-5 แต่บางรุ่นอาจไม่ทำงานเนื่องจาก Maven 4 ประกาศว่าปลั๊กอินต้องใช้ Maven 3.2.5 หรือใหม่กว่า ซึ่งจะเป็นกรณีของปลั๊กอินเวอร์ชัน 7.0 เท่านั้น 0 หรือใหม่กว่า
เวอร์ชั่นมาเวน | เวอร์ชันปลั๊กอิน | หมายเหตุ |
---|---|---|
มาเวน 3.X | ใดๆ | ปลั๊กอินต้องการอย่างน้อย maven 3.1.0-alpha-1 |
มาเวน 4.X | จากเวอร์ชัน 2.1.14 |
Maven หรือปลั๊กอินนี้ไม่รองรับเวอร์ชัน End of life (EOL) อีกต่อไป ข้อมูลต่อไปนี้จัดทำขึ้นเพื่อใช้อ้างอิง
เวอร์ชั่นมาเวน | เวอร์ชันปลั๊กอิน | หมายเหตุ |
---|---|---|
มาเวน 2.0.11 | มากถึง 2.2.6 | Maven 2 คือ EOL, git-commit-id-plugin:1.0 ไม่ทำงาน - ต้องใช้ maven เวอร์ชัน 2.2.1 |
มาเวน 2.2.1 | มากถึง 2.2.6 | Maven 2 คือ EOL |
มาเวน 3.0.X | สูงถึง 4.0.5 | git-commit-id-plugin:2.1.14, 2.1.15, 2.2.0, 2.2.1, 2.2.3 ไม่ทำงาน - ต้องใช้ maven เวอร์ชัน 3.1.1 |
มาเวน 3.0.X | สูงถึง 4.0.5 | สำหรับ git-commit-id-plugin 2.2.4 หรือสูงกว่า: ใช้งานได้ แต่ไม่สามารถโหลดคลาส "org.slf4j.impl.StaticLoggerBinder" |
มาเวน 3.1.0 | ใดๆ | git-commit-id-plugin:2.1.14, 2.1.15, 2.2.0, 2.2.1, 2.2.3 ไม่ทำงาน - ต้องใช้ maven เวอร์ชัน 3.1.1 |
มาเวน 3.3.1 | ใดๆ | git-commit-id-plugin:2.1.14 ไม่ทำงาน |
มาเวน 3.3.3 | ใดๆ | git-commit-id-plugin:2.1.14 ไม่ทำงาน |
หมายเหตุ: ตามตัวอย่าง -- ตารางนี้ควรอ่านเป็น: สำหรับ Maven 3.1.0
เวอร์ชันปลั๊กอิน any
ควรใช้งานได้ นอกเหนือจากเวอร์ชันที่ระบุไว้ใน Notes
จะมีข้อจำกัดที่แสดงอยู่
หากคุณต้องการใช้ สแนปช็อต จริงๆ นี่คือพื้นที่เก็บข้อมูลที่จะปรับใช้ แต่ฉันขอแนะนำอย่างยิ่งให้ใช้เฉพาะเวอร์ชันที่เสถียรจาก Maven Central... :-)
< pluginRepositories >
< pluginRepository >
< id >sonatype-snapshots</ id >
< name >Sonatype Snapshots</ name >
< url >https://s01.oss.sonatype.org/content/repositories/snapshots/</ url >
</ pluginRepository >
</ pluginRepositories >
Snapshots รุ่นเก่า (เวอร์ชันก่อนหน้า 5.X) มีอยู่ใน <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
หากคุณต้องการดูว่าปลั๊กอินทำอะไรได้บ้าง คุณสามารถโคลนพื้นที่เก็บข้อมูลและเรียกใช้ได้
mvn clean install -Dmaven.test.skip=true && mvn clean package -Pdemo -Dmaven.test.skip=true
ปัจจุบันโครงการนี้ได้รับการดูแลโดย: @ktoso (ผู้ก่อตั้ง), @TheSnoozer
ฉันอยากจะขอบคุณมากสำหรับคนเหล่านี้สำหรับคำแนะนำและ/หรือดึงคำขอที่ช่วยทำให้ปลั๊กอินนี้ได้รับความนิยมเหมือนในปัจจุบัน:
ฉันกำลังปล่อยปลั๊กอินนี้ภายใต้ GNU Lesser General Public License 3.0
คุณสามารถใช้มันได้ตามต้องการ โดยข้อความลิขสิทธิ์ฉบับเต็มจะแนบอยู่ในไฟล์ LICENSE
วิธีที่ดีที่สุดในการขอคุณสมบัติ/การปรับปรุงคือผ่านทางส่วนปัญหาใน GitHub - ดีกว่าอีเมล เพราะฉันจะไม่พลาดเมื่อฉันมีกล่องจดหมาย "ล้านอีเมล" ในแต่ละวัน และอาจมีคนอื่นมีความคิดบางอย่างหรือต้องการที่จะลงคะแนนโหวต ปัญหาของคุณ
นั่นคือทั้งหมด คน! มีความสุขในการแฮ็ก!