[英]Maven is not copying *.xml files in src/test/java to target/test-classes by default
我已經退出編程一段時間了,我又回到了它,我遇到了一個非常特殊的問題。 在過去,每當我從Maven中編譯測試代碼時,它都會將測試源樹中包含的所有* .xml資源文件復制到target/test-classes
。 但昨晚,在我目前的項目中,它不再這樣做 - 這不是我的預期。 每當我通過Maven或Intellij IDEA運行測試時,測試都會失敗,因為它在類路徑中找不到任何* .xml文件 - 它們從未被復制過。
我在我的計算機上使用完全相同的.pom文件和項目結構的舊項目,並且* .xml文件復制得很好。
為了解決這個問題,我將以下XML包含在我的Maven POM中:
<testResources>
<testResource>
<directory>src/test/java</directory>
<filtering>false</filtering>
<includes>
<include>**/*.xml</include>
</includes>
</testResource>
</testResources>
雖然這解決了這個問題,但我仍然很好奇為什么我不得不告訴Maven手動將測試源樹中的* .xml文件復制到我的target / test-classes目錄。 就像我說的那樣,過去兩年中所有其他舊項目都是在沒有指定testResources
情況下復制* .xml文件。
什么可能導致這種行為?
您應該將資源文件放在src/test/resources
而不是src/test/java
,這是針對java源文件的。
要控制(也)復制哪些文件,請查看資源插件文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.