In addition to the src/main/java, I am adding a src/bootstrap directory that I want to include in my build process, in other words, I want maven to compile and include the sources there in my build. How!?
src/{main,test}/
ที่บอกไว้ที่นี่
In addition to the src/main/java, I am adding a src/bootstrap directory that I want to include in my build process, in other words, I want maven to compile and include the sources there in my build. How!?
src/{main,test}/
ที่บอกไว้ที่นี่
คำตอบ:
คุณสามารถใช้Build Helper Pluginเช่น:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>some directory</source>
...
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
buildpath
สำหรับใครหรือไม่? 'เพราะมันไม่ใช่สำหรับฉัน FWIW ฉันใช้m2e
เพื่อนำเข้าโครงการ
Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:build-helper-maven-plugin:1.7:add-source (execution: add-source, phase: generate-sources)
รับข้อผิดพลาดนี้
pom.xml
เป็น -<project>
....
<build>
<resources>
<resource>
<directory>src/main/config</directory>
</resource>
</resources>
...
</build>
...
</project>
<resource>
เป็นโฟลเดอร์ "Resource" แต่ไม่ใช่โฟลเดอร์ "Source" เช่นจะไม่รวบรวมไฟล์ซอร์ส Java ไว้ภายใน
http://maven.apache.org/guides/mini/guide-using-one-source-directory.html
<build>
<sourceDirectory>../src/main/java</sourceDirectory>
ยังเห็น
ด้วยเวอร์ชัน Maven ล่าสุด (3) และเวอร์ชันล่าสุดของปลั๊กอินคอมไพเลอร์ maven (3.7.0) ฉันสังเกตเห็นว่าbuild-helper-maven-plugin
ไม่จำเป็นต้องเพิ่มโฟลเดอร์ซอร์สด้วยซอร์สโค้ดหากโฟลเดอร์ที่มีซอร์สโค้ดที่จะเพิ่มในบิลด์นั้นอยู่ในtarget
โฟลเดอร์หรือโฟลเดอร์ย่อยของมัน
ดูเหมือนว่าปลั๊กอิน maven ของคอมไพเลอร์จะรวบรวมซอร์สโค้ด java ที่อยู่ภายในโฟลเดอร์นี้ไม่ว่าจะอยู่ในไดเร็กทอรีใดก็ตาม
ตัวอย่างเช่นมีบางคน (ที่สร้างขึ้นหรือไม่) รหัสแหล่งที่มาในtarget/a
, target/generated-source/foo
จะได้รับการรวบรวมและเพิ่มเข้ามาใน outputDirectory target/classes
นี้:
คุณสามารถเพิ่มไดเร็กทอรีสำหรับกระบวนการสร้างของคุณเช่น:
...
<resources>
<resource>
<directory>src/bootstrap</directory>
</resource>
</resources>
...
src / main / java เป็นเส้นทางเริ่มต้นซึ่งไม่จำเป็นต้องกล่าวถึงใน pom.xml
target/classes
แต่ไม่ได้รวบรวม) คำถามนี้เป็นคำถามเกี่ยวกับการเพิ่มไดเรกทอรีต้นทางซึ่งถือแฟ้มที่จะถูกรวบรวมลงในtarget/classes
ไม่คัดลอก