我正在用Eclipse运行.
我会尽力解释.我正在开发一个"滥用"maven叠加层的项目,并且有许多模块在webapp中包含Javascript和LESS文件.
我们设法配置maven来爆炸maven-frontend-plugin将处理的目录(使用nodejs)生成最终编译的JS和CSS文件的依赖项.
当我使用纯maven时,这非常有效.但是,在Eclipse上,这并不能正常工作.主要原因是Eclipse简单地忽略了maven-war-plugin的执行配置,它会破坏依赖关系.相反,它简单地执行默认的maven-war-plugin:explode.
我需要修复它,这是获得现代前端开发环境的最大障碍(使用nodejs,npm和gulp来转换JS和LESS).
从我们的主要pom.xml中提取
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>make-webapp-compress</id>
<phase>generate-sources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<mkdir dir="${project.build.directory}/webapp-exploded" />
<mkdir dir="${project.build.directory}/webapp-compress" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<executions>
<execution>
<id>parent-resources-less</id>
<phase>generate-sources</phase>
<goals>
<goal>exploded</goal>
</goals>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<warSourceExcludes>**/*.ftl,**/*.vm,**/*.xml,WEB-INF/,META-INF/</warSourceExcludes>
<warSourceIncludes>**/*.css,**/*.less,**/*.js</warSourceIncludes>
<webappDirectory>${project.build.directory}/webapp-exploded</webappDirectory>
<webResources>
<resource>
<directory>src/main/webapp</directory>
</resource>
</webResources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<versionRange>[1.8,]</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<versionRange>[3.0.0,]</versionRange>
<goals> …Run Code Online (Sandbox Code Playgroud) 我知道当你在SPARC CPU(和MIPS)中读取%r0时,总是返回0,但我想知道为什么?
这背后有什么设计决定?为什么?