java如何告诉gradle在构建的项目中安装npm?
我的java web应用程序的angular 4 UI仅依赖于以下几个捆绑包。我从webapps root运行了以下命令。应用程序运行良好。我想知道最佳实践,因为我是新手
npm install rxjs
npm install @angular/core@4.4.6 @angular/common@4.4.6 @angular/compiler@4.4.6 @angular/platform-browser@4.4.6 @angular/platform-browser-dynamic@4.4.6 @angular/router@4.4.6 @angular/forms@4.4.6 --save
npm install typescript@2.4.2 --save
npm install plugin-typescript@5.2.7 --save
我指的是systemjs.config.js
中安装的捆绑包,如下所示:
paths: {
'npm:' : 'node_modules/'
},
map: {
'@angular/core' : 'npm:@angular/core/bundles/core.umd.js'
.
.
}
查询:
- 应用程序不应该太重,不能在
war
中包含整个node_modules
- 如果我将
node_modules
保存在project root而不是webapps中,我如何从systemjs.config.js
引用它 - 我只想要那些包,而不是运行
npm install @angular/cli
时下载的巨大文件堆栈 - 如果我们可以使用全局
node_modules
,那么如何从systemjs.config.js
引用它(我更喜欢将其保存在project中,以免干扰服务器中使用不同版本的其他应用程序) - 最后,在gradle构建时,我应该在
build.gradle
中包含什么来下载所需的捆绑包
# 1 楼答案
正如@Oliver Charlesworth所说,Gradle有他的局限性,但是你可以创建一个定制的Gradle任务
例如:
将构建依赖项添加到
war
构建步骤中