【发布时间】:2014-01-07 06:09:32
【问题描述】:
我们从几个基于 Maven 的项目中组装了一个 war 文件。 其中一个项目使用 maven-shade-plugin 在其目标 jar 文件中包含其他库。为了便于讨论,我们将其称为 x.jar。
当 maven 构建 war 文件时,它包含正确的 x.jar 文件,其中包含打包的附加库。
我们使用最新版本(3.4.0)的Spring Source将其部署到Spring Source中配置的服务器上。服务器是 Sprint TC Server 2.0.3。
一旦项目部署到服务器(即 Sprint TC Server 2.0),jar 文件 (x.jar) 就会以某种方式被替换为不正确的小文件,其中没有打包库。
这个较小的 x.jar 在部署之前并不存在于文件系统中的任何位置,所以看起来像是 Spring Source 自己编译的。
因此我们无法在 Spring Source 中部署我们的系统。 各位大佬,我们问题的原因或解决方法是什么?
----------- 更新 -----------
我们进行了测试。我们在部署之前破坏了 maven pom.xml 文件,因此 Spring Source 部署了原始文件而不重新编译它。结果是正确的部署。
此测试表明 Spring Source 在将 jar 部署到服务器时会静默重建它们。
有没有办法阻止它或让它正常工作?
【问题讨论】:
标签: maven sts-springsourcetoolsuite springsource maven-shade-plugin tcserver