我正在从jar中提取JavaScript作为构建过程的一部分。我希望这个js是我的web资源的一部分,用于部署在tomcat上的应用程序,我已经更新了我的构建过程,以允许这种情况发生。做一个maven构建(在eclipse之外)像预期的那样工作,我可以把所有东西按正确的顺序打包成一个war。
然而,当使用eclipse构建时,我遇到了一些令人头疼的问题。我的理解是,为了通过增量构建将web资源部署到tomcat,我需要将这些构建时生成的js文件放入target/m2e-wtp/web-resources目录中。但是,当我发布这些新文件时,它们被忽略了,部署到tomcat的web资源似乎是从我的源代码中拉出来的。
我还调整了项目的部署程序集设置。通过这个,我仍然没有让它工作。我有一个条目[source:/target/m2e-wtp/web-resources, DeployPath:/],当我执行"发布"到服务器时,它应该会找到新生成的文件。然而,同样的事情也发生在m2e-wtp似乎是从源代码中提取的地方。
我错过了什么吗?我如何从m2e-wtp获得标准行为(即使其与eclipse之外完成的构建相媲美)?或者我可以让eclipse只构建战争并像这样部署它(不做增量构建,我可以牺牲一些速度)?
供参考(版本):
eclipse: (Using Spring Tool Suite) 3.2.0
m2e: 1.3.1
m2e-wtp: 0.17.0
tomcat: 7.0
实验添加后:
在删除我的目标目录后,我执行了一个发布到Tomcat,所有的web资源都从我的源代码复制。我还得到了一个关于未找到文件的弹出窗口,其中大部分是编译类。然而,它正在寻找/target/m2e-wtp/web-resources/META-INF中的三个文件。m2e-wtp插件是否只查找文件夹中的特定文件而不是整个指定文件夹?
问题是目标目录没有刷新。Eclipse(或与此相关的m2e插件)在构建期间不识别或不关心目标目录中的文件更改,这是我所假设的。现在我打开了自动刷新(工作区)选项。访问刷新选项不起作用,因为它似乎只有在我第一次发布到tomcat时才触发刷新。