Last active
July 20, 2022 12:32
-
-
Save aVolpe/8c91a43750fcacca426699d8582b84da to your computer and use it in GitHub Desktop.
Build a angular-cli project with maven
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{... | |
"scripts": { | |
"ng": "ng", | |
"start": "ng serve --proxy-config proxy.conf.json", | |
"clean": "rm -rf dist", | |
"build-prod": "yarn install && ng build -prod", | |
"build-dev": "yarn install && ng build -dev", | |
"test": "ng test", | |
"lint": "ng lint", | |
"e2e": "ng e2e" | |
}, | |
..} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<project xmlns="http://maven.apache.org/POM/4.0.0" | |
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | |
<modelVersion>4.0.0</modelVersion> | |
<artifactId>test</artifactId> | |
<groupId>py.com.volpe</groupId> | |
<version>1.0.0-SNAPSHOT</version> | |
<packaging>war</packaging> | |
<properties> | |
<node.version>v6.9.1</node.version> | |
<yarn.version>v0.24.6</yarn.version> | |
<frontend-maven-plugin.version>1.4</frontend-maven-plugin.version> | |
<environment>prod</environment> | |
</properties> | |
<build> | |
<plugins> | |
<plugin> | |
<groupId>com.github.eirslett</groupId> | |
<artifactId>frontend-maven-plugin</artifactId> | |
<version>${frontend-maven-plugin.version}</version> | |
<executions> | |
<execution> | |
<id>install node and yarn</id> | |
<goals> | |
<goal>install-node-and-yarn</goal> | |
</goals> | |
<phase>generate-resources</phase> | |
</execution> | |
<execution> | |
<id>yarn install</id> | |
<goals> | |
<goal>yarn</goal> | |
</goals> | |
<phase>compile</phase> | |
<configuration> | |
<arguments>install</arguments> | |
</configuration> | |
</execution> | |
<execution> | |
<id>ng build</id> | |
<goals> | |
<goal>yarn</goal> | |
</goals> | |
<phase>generate-resources</phase> | |
<configuration> | |
<arguments>run build-${environment}</arguments> | |
</configuration> | |
</execution> | |
<execution> | |
<id>ng clean</id> | |
<goals> | |
<goal>yarn</goal> | |
</goals> | |
<phase>clean</phase> | |
<configuration> | |
<arguments>run clean</arguments> | |
</configuration> | |
</execution> | |
</executions> | |
<configuration> | |
<nodeVersion>${node.version}</nodeVersion> | |
<yarnVersion>${yarn.version}</yarnVersion> | |
</configuration> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-war-plugin</artifactId> | |
<version>3.1.0</version> | |
<configuration> | |
<webXml>web.xml</webXml> | |
<webResources> | |
<resource> | |
<!-- this is relative to the pom.xml directory --> | |
<directory>dist</directory> | |
</resource> | |
</webResources> | |
</configuration> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.tomcat.maven</groupId> | |
<artifactId>tomcat7-maven-plugin</artifactId> | |
<version>2.1</version> | |
<configuration> | |
<update>true</update> | |
<path>/${project.name}##${project.version}</path> | |
</configuration> | |
</plugin> | |
</plugins> | |
</build> | |
</project> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" | |
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" | |
metadata-complete="false" version="3.1"> | |
</web-app> |
Why is 'ng build' performed in the 'generate-resources' phase and therefore before the 'yarn install' command in the 'compile' phase?
Shoudn't 'yarn install' be in the 'generate-resources' phase and 'ng build' in the 'compile' phase?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Does
mvn clean
work here? I have a very similar setup, and it's failing with:Presumably this is because the
install node and yarn
execution hasn't happened before it runsclean
. Or am I doing something stupid?