Tag: war

使用一堆npm包的Java War文件部署

我正在使用Eclipse中的一个dynamicWeb项目,并且正在计划使用Angular / Durandal / Aurelia风格的框架来构build一个JavaScript单页应用程序前端的Java JAX-RS RESTful后端。 有了这个说法,在Java世界中部署的典型方法是将东西捆绑为一个WAR文件 – 这本质上是一个JAR文件。 麻烦的是,包括node_modules相当大的WAR文件的大小。 另一方面,我可以在部署后执行'npm install'。 但是,在我经常部署的开发机器上,这将花费太多时间。 我宁愿如果我可以使用“npm install”模块在Web服务器上准备安装目录,然后在其上部署WAR文件。 麻烦的是,看起来WAR文件部署如果没有包含在WAR文件中,就会消除文件夹。 我正在使用GlassFish 4.1应用程序服务器。 对于我来说,理想的解决scheme是通过修改MANIFEST.MF文件来“隐藏”WAR文件中的目录,这样当扩展隐藏的目录时不会被覆盖。 这将是我的问题最简单的解决scheme。 但是,我知道没有隐藏JAR / WAR文件清单的清单条目。 也可能有创造性的解决scheme来使用'npm link'命令。 任何build议,欢迎。 也许这个原因之一就是为什么一旦人们开始在客户端使用npm,他们就开始看节点,并在服务器端进行expression。 然而,我不相信他们不能一起玩,我想保留所有旧的开源Java库的选项在我的处置。

如何只将maven执行目标定位到构build文件夹?

我有一个项目使用Maven和前端Maven的插件(com.github.eirslett)。 当我运行mvn install从插件运行mvn install所有的执行,并且他们在src/main/webapp根目录下创build一个node_modules , bower_components和node文件夹,其中实际的前端代码是。 问题是,我想只mvn install执行,并在build目录中创build包,而不是在版本化的应用程序代码中创build这些包,就像在Java库中一样。 有没有办法做到这一点? 这是我的pom.xml的相关部分: <build> <directory>build</directory> <outputDirectory>build/classes</outputDirectory> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.3</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <encoding>UTF-8</encoding> <webResources> <resource> <filtering>true</filtering> <directory>src/main/webapp</directory> <includes> <include>WEB-INF/weblogic.xml</include> </includes> </resource> </webResources> </configuration> </plugin> … <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <version>0.0.20</version> <configuration> <workingDirectory>src/main/webapp</workingDirectory> </configuration> <executions> <execution> <id>install node and npm</id> <goals> <goal>install-node-and-npm</goal> </goals> <configuration> <nodeVersion>v0.10.34</nodeVersion> <npmVersion>2.1.11</npmVersion> </configuration> </execution> […]