我在安装mvn后将weblogic.xml放在WEB-INF文件夹下时遇到问题。我的weblogic.xml文件在src / main / resources / weblogic.xml下,我希望它在安装后放在WEB-INF下。(顺便打包是“战争”)
我试过了:
<resources>
<resource>
<directory>src/main/resources</directory>
<targetPath>../resources</targetPath>
<excludes><exclude>web.xml</exclude><exclude>weblogic.xml</exclude></excludes>
</resource>
<resource>
<directory>src/main/resources/config</directory>
<targetPath>..</targetPath>
<includes><include>weblogic.xml</include></includes>
</resource>
</resources>
它正在安装但是当我想要使用eclipse的类路径时:eclipse,它会给出错误:
描述资源路径位置类型无法在输出文件夹中嵌套输出文件夹“ResponseManager / target / WEB-INF / resources” 'ResponseManager / target / WEB-INF'ResponseManager构建路径构建 路径问题
因为类路径中的这个conf:
<classpathentry kind="src" path="src/main/resources" output="target/WEB-INF/resources" excluding="web.xml|weblogic.xml|**/*.java"/>
<classpathentry kind="src" path="src/main/resources/config" output="target/WEB-INF" including="weblogic.xml" excluding="**/*.java"/>
有什么想法吗?
答案 0 :(得分:6)
通常情况下,src/main/resources
下的文件会在已编译的类文件中打包,在一个Web应用程序中,它们将放在WEB-INF/classes
中。你有什么理由不能把这些放在标准路径src/main/webapp
下吗?
如果您需要打包不在src/main/webapp
文件夹中的其他文件,那么最好在war插件中配置这些资源,如下所示:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1</version>
<configuration>
<webResources>
<resource>
<directory>src/main/config</directory>
<targetPath>WEB-INF</targetPath>
<includes>
<include>weblogic.xml</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
应该可以像上面那样指定targetPath
,但我认为在源文件夹中重现想要的目录结构会更清晰。