gpt4 book ai didi

java - 如何告诉 gradle 在构建项目中安装 npm?

转载 作者:行者123 更新时间:2023-11-30 06:46:21 25 4
gpt4 key购买 nike

我的 java web 应用程序的 angular 4 UI 仅依赖于以下几个包。我从 webapps root 运行了以下命令。应用程序运行良好。我想知道最佳实践,因为我是 Angular 的新手。

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'
.
.
}

查询:

  1. 应用不能太重,不能在war中包含整个node_modules
  2. 如果我将 node_modules 保留在项目根目录而不是 webapps 中,我如何从 systemjs.config.js 引用它
  3. 我只想要那些包,而不是在运行 npm install @angular/cli
  4. 时下载的巨大文件堆栈
  5. 如果我们可以使用全局 node_modules,如何从 systemjs.config.js 中引用它(我更喜欢将它保留在项目中,以免干扰服务器中的其他应用程序使用不同的版本)
  6. 最后,我应该在 build.gradle 中包含什么以在 gradle 构建时下载所需的包

最佳答案

正如@Oliver Charlesworth 所说,Gradle 有其局限性,但您可以创建自定义 gradle 任务。

例子:

task npmInstall(type: Exec) {
workingDir 'src/main/webapp'
commandLine 'npm', 'install'
}

将构建依赖项添加到您的war构建步骤

war {
dependsOn npmBuild
}

关于java - 如何告诉 gradle 在构建项目中安装 npm?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47675044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com