Liferay js 捆绑器 - 未删除未使用的节点模块
Liferay js bundler - unused node modules not removed
我正在使用 Liferay 7.3.5 并构建一个 Angular Portlet。我发现很难用不同的模块(或同一模块的版本)进行试验,因为不知何故,最终的 jar OSGI 模块确实包含了我玩过的所有模块,而不是 [=24 中的唯一模块=] 文件.
例如,我添加了 "ng2-pdf-viewer": "5.3.4"
,然后将其切换为 "ng2-pdf-viewer": "6.3.0"
。我原以为最终的 jar 文件只包含 6.3.0
版本,但实际上它同时包含 5.3.4
和 6.3.0
。我一直在玩的所有其他模块都会发生这种情况。
所以,基本上,我在 package.json 文件中的内容并没有反映在最终的 .jar 文件中,我不确定如何清除只保留所有未使用的依赖项的缓存。
我也删除了 node_modules 文件夹中的所有文件夹,但之后没有成功。
我怎样才能purge/clean上下文才能有一个真实的状态?
我没有找到完整的解决方案,但它对我来说已经足够了 - 我已经完成了以下操作:
- 从 eclipse-workspace
\modules 中删除 node_modules
文件夹
- 执行了gradle clean from eclipse gradle任务(这将清理项目的构建文件夹,与node_modules文件夹没有任何关系)
- 从 eclipse-workspace
\modules 执行 npm install
- 再次构建完整项目
重要说明:我还注意到,尽管我已经进行了上述所有清理工作,但我的 package.json 和 package-lock.json 之间存在不同步 - 我的意思是,我的版本 "ng2-pdf-viewer": "5.2.3"
在 package.json 文件中,但在生成的包中 - lock.json 我有 "ng2-pdf-viewer": "5.3.4"
。我刚刚触发了两次构建过程,最后同步了文件。
即使这次 package-lock.json 文件是正确的,两个模块都打包在 Liferay 模块 .jar 中——我的意思是,有 5.2.3 和 5.3.4 两个版本。当我将 package.json 文件切换到较新版本时,我只能保留其中一个。
我正在使用 Liferay 7.3.5 并构建一个 Angular Portlet。我发现很难用不同的模块(或同一模块的版本)进行试验,因为不知何故,最终的 jar OSGI 模块确实包含了我玩过的所有模块,而不是 [=24 中的唯一模块=] 文件.
例如,我添加了 "ng2-pdf-viewer": "5.3.4"
,然后将其切换为 "ng2-pdf-viewer": "6.3.0"
。我原以为最终的 jar 文件只包含 6.3.0
版本,但实际上它同时包含 5.3.4
和 6.3.0
。我一直在玩的所有其他模块都会发生这种情况。
所以,基本上,我在 package.json 文件中的内容并没有反映在最终的 .jar 文件中,我不确定如何清除只保留所有未使用的依赖项的缓存。
我也删除了 node_modules 文件夹中的所有文件夹,但之后没有成功。
我怎样才能purge/clean上下文才能有一个真实的状态?
我没有找到完整的解决方案,但它对我来说已经足够了 - 我已经完成了以下操作:
- 从 eclipse-workspace
\modules 中删除 - 执行了gradle clean from eclipse gradle任务(这将清理项目的构建文件夹,与node_modules文件夹没有任何关系)
- 从 eclipse-workspace
\modules 执行 - 再次构建完整项目
node_modules
文件夹
npm install
重要说明:我还注意到,尽管我已经进行了上述所有清理工作,但我的 package.json 和 package-lock.json 之间存在不同步 - 我的意思是,我的版本 "ng2-pdf-viewer": "5.2.3"
在 package.json 文件中,但在生成的包中 - lock.json 我有 "ng2-pdf-viewer": "5.3.4"
。我刚刚触发了两次构建过程,最后同步了文件。
即使这次 package-lock.json 文件是正确的,两个模块都打包在 Liferay 模块 .jar 中——我的意思是,有 5.2.3 和 5.3.4 两个版本。当我将 package.json 文件切换到较新版本时,我只能保留其中一个。