Maven -> 更新项目... 究竟是什么?

15
我对此非常沮丧:
我正在使用一个Maven项目,并与eclipselink一起使用jdbc。mvn install的工作正常。直到我必须更改persistence.xml中的密码。当我运行mvn clean,然后运行mvn install时,项目失败了,仍在使用错误(旧)的persistence.xml。在eclipse中,我必须执行maven-> update project(使用m2e插件),然后mvn install又可以正常工作了。
现在我的问题是:在部署服务器上,我使用命令行脚本,但我找不到m2e功能的mvn XYZ等效项...
有相应的解决方案吗?
具体情况如下:
我在本地机器(OSX / Win7)上开发一个在eclipse中导入的maven项目中。我有一个JPA Persistence接口,它封装了通过eclipselink实现的数据库连接。我可以在本地部署(mvn install),但是在运行mvn clean并在persistence.xml中更改密码之后,mvn install就无法再次使用了。在测试中,我只能得到classDefNotFound Persistor,因为它静态初始化EntityManager,因为新的persistence.xml无法连接--或者至少是我的观点,因为堆栈跟踪并不真正有用。但是,在eclipse中“maven-> update project ...”项目之后,mvn install再次正常工作,并且新密码被采用(测试运行!)。
当我想在远程机器(debian,命令行)上部署项目时,我无法mvn install所拉取的项目,因为在部署之前更改了persistence.xml中的密码后,又是错误的persistence.xml或者至少有些缓存被使用。请确保将persistence.xml文件放置在src/main/resources/META-INF目录下而不是其他地方。m2e会从错误的位置捕获persistence.xml文件(在我的情况中是src/main/java/META-INF)。因此,这基本上只是一个错误的项目结构。


这应该会有所帮助:https://dev59.com/CGkv5IYBdhLWcg3wew1d?answertab=oldest#tab-top - PCM
2个回答

4

不幸的是,它没有成功。在执行了mvn clean或进行了新的git pull之后,我无法安装。 - ThommyH
你说的“无法安装”是什么意思?请在问题中编辑出现的任何错误,我很乐意帮忙查看。 - hd1
1
他显然正在使用 Eclipse 的 m2e Maven 集成插件。这与您提到的 Maven Eclipse 插件 不协调。我不会同时使用两者。 - FrVaBe

1
从Eclipse更新项目的Maven与其他方式不同,因为它将生成一个Maven Dependencies类路径容器。 mvn eclipse:eclipse 会生成一个Referenced Library容器。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接