idea中maven的resource文件修改后从target中消失的问题

发布于 2022-01-03 18:30:35 字数 55 浏览 775 评论 9


修改idea里边的资源文件文件的


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

为你鎻心 2022-01-07 18:07:59

今天也碰到这个问题了,一ReCompile某个resources文件,那个文件就从target中消失了,然后控制台就报错找不到这个文件。现在解决了, 点击菜单 “build” -> “rebuild project”。从这篇文章看到的: https://www.bitdoom.com/2019/08/08/p150/

成熟的代价 2022-01-07 18:06:43

入门mybatis遇到这个坑  maven只编译java文件到输出目录(target),xml就不会拷贝过去导致执行环境中xml丢失

(我还以为我代码写错了 手动将xml拷贝过去就可以)

看到大佬代码发现在pom中构建配置中包含xml就行了

在此帮助路过的路人

	<build>
		<!--解决Intellij构建项目时,target/classes目录下不存在mapper.xml文件-->
		<resources>
			<resource>
				<directory>${basedir}/src/main/java</directory>
				<includes>
					<include>**/*.xml</include>
				</includes>
			</resource>
		</resources>
	</build>

 

多彩岁月 2022-01-07 18:04:18

我的项目结构是

src/main/webapp下是jsp

src/main/resources下是properties和xml

修改前 打包完的结构是

target/项目名/ 这里是webapp内容

target/项目名/WEB-INF/classes 这里是resources内容

但出现了修改xml后target下xml文件直接消失的问题

经过探索在pom的plugins里加入这一段(filtering标签是过滤表达式用的 是否false应该是没影响的)

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-war-plugin</artifactId>
   <version>2.1.1</version>
   <configuration>
      <webResources>
         <resource>
            <directory>src/main/webapp</directory>
            <filtering>false</filtering>
         </resource>
         <resource>
            <directory>src/main/resources</directory>
            <targetPath>/WEB-INF/classes</targetPath>
            <filtering>false</filtering>
         </resource>
      </webResources>
   </configuration>
</plugin>

默认情况下只有src/main/webapp打包到 / 

我加入了src/main/resources打包到 /WEB-INF/classes

关于这段可以看project settings->modules下 选中模块 选中web

配置前

配置 并reimport后

经过测试

1.手动进入资源管理器删除xml 点run 不会更新

2.使用idea打开xml并修改 点run 会更新修改过的文件

倚栏听风 2022-01-07 18:02:01

在IDEA下,据我观察mvn install或着mvn package之后只要不去target目录下打开资源文件(步骤一),然后再修改resources目录下的文件(步骤二),就不会导致target目录下对应的资源文件消失。正常编辑源文件时idea会帮我们把新内容发布至target目录下,所以通常并不需要去打开target目录下的资源文件。如果遇到特殊情况需要手工打开target下的资源文件,启动项目之前再mvn install或者mvn package一下,target目录下就会重新生成资源文件(没成功的话就停掉项目再mvn install或者mvn package一下,一般都能重新生成)。

另附一篇文章供参考 https://blog.csdn.net/BeauXie/article/details/65448964

海之角 2022-01-07 17:45:28

同样的问题,勾选了bulid project automatically也不行,只好每次都执行一下generate source and update folders

看透却不说透 2022-01-07 17:26:42

没。。。只能每次改配置文件mvn编译下

皇甫轩 2022-01-07 04:10:56

我也是这个问题,解决了吗?LZ

德意的啸 2022-01-07 00:41:52

没人遇到过么??

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文