Maven->更新项目...一点儿没错?

dxxyhpgq  于 2022-10-15  发布在  Maven
关注(0)|答案(2)|浏览(143)

我对这件事感到非常沮丧:
我正在使用一个maven项目,使用带有eclipselink的JDBC。mvn install按预期工作。直到我必须更改Persistence.xml中的PW。当我执行mvn clean和之后的mvn install时,项目被破坏,错误的(旧的)sistence.xml仍在使用。在eclipse中,我不得不使用maven -> update project(使用m2e插件),mvn install突然再次工作。

**现在我的问题是:**在部署服务器上,我正在使用命令行脚本,但我没有找到与M2E功能等效的mvn XYZ……

有没有类似的东西?

显式场景:

我正在我的本地机器(OSX/Win7)上开发一个导入到eclipse中的Maven项目。我有一个JPA持久化接口,它封装了通过eclipselink实现的数据库连接。我可以在本地部署(mvn install),但在我运行mvn clean并更改persistence.xml中的密码后,mvn install不再可能。我只是在测试中得到了classDefNotFound Persistor,因为它静态地初始化了无法连接的EntityManager,这是由于新的persistence.xml的原因--或者至少这是我的观点,因为堆栈跟踪没有真正的帮助。但是,在项目上的maven -> update project...进入eclipse后,mvn install再次工作,并使用新密码(测试运行!)。
当我想要在远程机器(Debian,命令行)上部署项目时,我无法‘MVN安装’拉取的项目,因为在我为部署更改Persistence.xml中的密码后,它再次是错误的Persistence.xml,或者至少使用了一些缓存。我希望这能让它更清楚一点。

**解决方案:**确保Persistence.xml放在src/main/Resources/META-INF中,不要放在其他地方。M2E从错误的位置(在我的例子中,是src/main/Java/META-INF)捕获sistence.xml。因此,这基本上只是一个错误的项目结构。

lymgl2op

lymgl2op1#

看起来您可以使用mvn eclipse:clean eclipse:eclipseregenerate the eclipse project files--希望这会对您进行排序。

798qvoo8

798qvoo82#

与eclipse不同的Maven更新项目是不同的,因为它将生成Maven依赖项类路径容器
mvn eclipse:eclipse生成引用的库容器。

相关问题