在构建 spring 启动应用程序之前安装 nodejs
installing nodejs before building spring boot app
所以我正在用 angular 4 前端构建一个 spring 启动应用程序,我需要自动化构建,我正在为此使用 AWS 开发人员套件
我已经创建了监视我的回购更改的管道,我有这个buildspec.yml配置如下
version: 0.2
phases:
install:
commands:
- sudo apt-add-repository ppa:chris-lea/node.js
- sudo apt-get -y update
- sudo apt-get -y install nodejs=7.9.0
- node -v
- sudo npm install -g @angular/cli
pre_build:
commands:
- sudo cd src/main/frontend
- sudo npm install && sudo npm run deploy-dev
- sudo cd .. && sudo cd .. && sudo cd..
build:
commands:
- echo Build started on `date`
- mvn clean install
post_build:
commands:
- mv target/ROOT.war.original ROOT.war
artifacts:
files:
- '**/*'
base-directory: 'target/ROOT'
它基本上是安装 nodejs 然后安装 angular-cli 来构建 Angular 4 然后将所有 dist/* 移动到 /resources/public 在 spring 引导和然后 运行 maven build.
我的问题是我无法安装节点 我尝试了很多方法 none 其中对我有用的方法,任何人都可以帮助我重新审视或对此有任何经验吗?
我的 AWS codebuild 构建环境是 Java8
好吧,我最终通过 bash 脚本安装了 nodejs v7.0.0
我使用了下面的脚本
set -ex \
&& for key in \
9554F04D7259F04124DE6B476D5A82AC7E37093B \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
0034A06D9D9B0064CE8ADF6BF1747F4AD2306D93 \
FD3A5288F042B6850C66B31F09FE44734EB7990E \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
B9AE9905FFD7803F25714661B63B535A4C206CA9 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
; do \
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys"$key"; \
done
sudo apt-get update
wget "https://nodejs.org/download/release/v7.0.0/node-v7.0.0-linux-
x64.tar.gz" -O node-v7.0.0-linux-x64.tar.gz \
&& wget "https://nodejs.org/download/release/v7.0.0/SHASUMS256.txt.asc" -O SHASUMS256.txt.asc \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v7.0.0-linux-x64.tar.gz$" SHASUMS256.txt | sha256sum -c - \
&& tar -xzf "node-v7.0.0-linux-x64.tar.gz" -C /usr/local --strip-components=1 \
&& rm "node-v7.0.0-linux-x64.tar.gz" SHASUMS256.txt.asc SHASUMS256.txt \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*
基本上这个脚本会为你下载并安装 nodejs v7.0.0
我从 here
拿来的
你好,未来的奋斗者我给你留了点心3>
所以我正在用 angular 4 前端构建一个 spring 启动应用程序,我需要自动化构建,我正在为此使用 AWS 开发人员套件
我已经创建了监视我的回购更改的管道,我有这个buildspec.yml配置如下
version: 0.2
phases:
install:
commands:
- sudo apt-add-repository ppa:chris-lea/node.js
- sudo apt-get -y update
- sudo apt-get -y install nodejs=7.9.0
- node -v
- sudo npm install -g @angular/cli
pre_build:
commands:
- sudo cd src/main/frontend
- sudo npm install && sudo npm run deploy-dev
- sudo cd .. && sudo cd .. && sudo cd..
build:
commands:
- echo Build started on `date`
- mvn clean install
post_build:
commands:
- mv target/ROOT.war.original ROOT.war
artifacts:
files:
- '**/*'
base-directory: 'target/ROOT'
它基本上是安装 nodejs 然后安装 angular-cli 来构建 Angular 4 然后将所有 dist/* 移动到 /resources/public 在 spring 引导和然后 运行 maven build.
我的问题是我无法安装节点 我尝试了很多方法 none 其中对我有用的方法,任何人都可以帮助我重新审视或对此有任何经验吗?
我的 AWS codebuild 构建环境是 Java8
好吧,我最终通过 bash 脚本安装了 nodejs v7.0.0
我使用了下面的脚本
set -ex \
&& for key in \
9554F04D7259F04124DE6B476D5A82AC7E37093B \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
0034A06D9D9B0064CE8ADF6BF1747F4AD2306D93 \
FD3A5288F042B6850C66B31F09FE44734EB7990E \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
B9AE9905FFD7803F25714661B63B535A4C206CA9 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
; do \
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys"$key"; \
done
sudo apt-get update
wget "https://nodejs.org/download/release/v7.0.0/node-v7.0.0-linux-
x64.tar.gz" -O node-v7.0.0-linux-x64.tar.gz \
&& wget "https://nodejs.org/download/release/v7.0.0/SHASUMS256.txt.asc" -O SHASUMS256.txt.asc \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v7.0.0-linux-x64.tar.gz$" SHASUMS256.txt | sha256sum -c - \
&& tar -xzf "node-v7.0.0-linux-x64.tar.gz" -C /usr/local --strip-components=1 \
&& rm "node-v7.0.0-linux-x64.tar.gz" SHASUMS256.txt.asc SHASUMS256.txt \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs \
&& rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*
基本上这个脚本会为你下载并安装 nodejs v7.0.0
我从 here
拿来的你好,未来的奋斗者我给你留了点心3>