Câu trả lời:
Cái này phải không?
Tôi cũng đã chuyển nội dung của nó sang repo GitHub:
https://github.com/cko/predained_maven_properIES/blob/master/README.md
[WARNING] The expression ${artifactId} is deprecated. Please use ${project.artifactId} instead.
nhưng bao gồm hầu hết;)
Hãy xem phần 9.2.: Thuộc tính Maven của cuốn sách trực tuyến miễn phí Maven: The Reference Reference .
Nhìn vào "POM hiệu quả" có lẽ cũng sẽ giúp ích. Chẳng hạn, nếu bạn muốn biết đường dẫn dùng để làm gì${project.build.sourceDirectory}
bạn sẽ tìm thấy XML có liên quan trong POM hiệu quả, chẳng hạn như:
<project>
<build>
<sourceDirectory>/my/path</sourceDirectory>
Cũng hữu ích - bạn có thể thực hiện đánh giá các thuộc tính theo thời gian thực thông qua thực thi dòng lệnh mvn help:evaluate
trong khi trong cùng một thư mục với POM.
Tôi nghĩ rằng nơi tốt nhất để tìm là Super POM .
Ví dụ, tại thời điểm viết, tham chiếu được liên kết hiển thị một số thuộc tính giữa các dòng 32 - 48.
Việc giải thích điều này là tuân theo XPath như một thuộc tính .
được phân định.
Ví dụ:
${project.build.testOutputDirectory}
== ${project.build.directory}/test-classes
Và:
${project.build.directory}
== ${project.basedir}/target
Do đó, kết hợp chúng, chúng tôi tìm thấy:
${project.build.testOutputDirectory}
== ${project.basedir}/target/test-classes
(Để tham khảo (các) thư mục tài nguyên, hãy xem câu hỏi stackoverflow này )
<project>
<modelVersion>4.0.0</modelVersion>
.
.
.
<build>
<directory>${project.basedir}/target</directory>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<finalName>${project.artifactId}-${project.version}</finalName>
<testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory>
<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
<scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
<testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>
<resources>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>${project.basedir}/src/test/resources</directory>
</testResource>
</testResources>
.
.
.
</build>
.
.
.
</project>
Tôi cảm thấy mệt mỏi khi nhìn thấy trang này với các tài liệu tham khảo cũ của nó cho các trang Codehaus không còn tồn tại nên tôi đã hỏi trong danh sách gửi thư của Người dùng Maven và nhận được một số câu trả lời cập nhật hơn.
Tôi muốn nói rằng câu trả lời tốt nhất (và có thẩm quyền nhất) có trong liên kết của tôi ở trên là câu trả lời của Hervé BOUTEMY:
đây là tài liệu tham khảo chính: http://maven.apache.org/ref/3-LATEST/maven-model-builder/
nó không giải thích mọi lỗi có thể tìm thấy trong POM hoặc trong cài đặt, vì có rất nhiều thông tin có sẵn nhưng nó chỉ đến POM và mô tả cài đặt và giải thích mọi thứ không phải là POM hoặc cài đặt
Liên kết này hiển thị cách liệt kê tất cả các thuộc tính đang hoạt động: http : // skill Shared.blogspot.co.uk/2012/11/how-to-list-down-all-maven-av Available.html
Tóm lại, thêm định nghĩa plugin sau vào POM của bạn, sau đó chạy mvn install
:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<echoproperties />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
${...}
)