像上一篇文章,我们提到的,IDEA MAVEN struts项目中,如果我们把 struts.xml 文件放在 src 目录下,编译的时候,将无法打包到*\WEB-INF\classes*路径下,运行程序的时候自然就会报错(404的错误,如下图:)
建议大家先看目录,再按步骤操作。重点内容
1. struts.xml 文件无法打包到 \WEB-INF\classes\
2. 无法打包 struts.xml 文件 导致运行报错
控制台异常信息,见附录。
3.MAVEN项目 打包到指定路径 解决方案
设置步骤如下:
FILE->Project Structure->Artifacts->选择运行的方式->找到 \WEB-INF\classes\ 路径,
->点击 + 号->选择 File->找到 struts.xml 文件-> ok ,
这样我们便可以设置 将 指定文件 打包到指定目录了。
4.设置后,查看打包结果
5.附录
找不到 struts.xml ,控制台报错如下:
org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@4347694b]at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:441)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4758)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4893)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:740)at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:716)at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:703)at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:620)at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1832)at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)at java.util.concurrent.FutureTask.run(FutureTask.java:266)at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:530)at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:429)at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1622)at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:304)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1172)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1394)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1398)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1366)at java.lang.Thread.run(Thread.java:745)Caused by: java.lang.IllegalArgumentException: The main resource set specified [D:\MyProject\java\_project\mavenstruts2\target\mavenstruts2] is not validat org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:749)at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:706)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)... 22 more
如果觉得《IDEA MAVEN 项目 打包文件到指定目录》对你有帮助,请点赞、收藏,并留下你的观点哦!