我有一个在行家3.6.1上运行的现有项目,我想将其升级到3.12.2。我按照jhipster网站中描述的升级过程,但生成的hipster_upgrade分支仍然提到旧版本的子生成器。
使用npm强制更新
在运行以下命令npm install -g generator-jhipster
时,它会显示以下内容
npm WARN deprecated node-uuid@1.4.7: use uuid module instead
npm WARN deprecated npmconf@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npm
/usr/local/lib
└── generator-jhipster@3.12.2
然后我运行yo jhipster --force --with-entities
,这是输出:
Welcome to the JHipster Generator v3.6.1
Documentation for creating an application: https://jhipster.github.io/creating-an-app/
Application files will be generated in folder: /Users/bso/Projects/portal ______________________________________________________________________________
JHipster update available: 3.12.2 (current: 3.6.1)
Run npm install -g generator-jhipster to update.
______________________________________________________________________________
重新安装jhipster生成器
在执行npm i generator-jhipster
时,jhipster生成器更新为3.12.2,但在重新处理升级时,它会返回到3.6.1。
有关为何会发生这种情况的任何线索?
答案 0 :(得分:0)
@Jinna添加的最后一条评论正在解决这个问题。我在我的系统中的两个不同位置找到了两个jhipster生成器,所以这就是问题......
使其有效的步骤: 1- npm link generatir-jhipster 2-删除〜/ .node_modules中的生成器,应保留的生成器是/ usr / loca /
下的生成器答案 1 :(得分:0)
为什么难以使用除3.6.1之外的其他版本的原因是jhipster将自己保存到您的节点模块中以确保您始终使用您生成的生成器版本,以避免错误。
查看JHipster application upgrade guide以了解如何使用
升级您的应用yo jhipster:upgrade