根据config.xml更新cordova插件

时间:2016-10-26 16:53:37

标签: git cordova plugins

我在两台机器上运行我的cordova项目:macbook和PC。 当我在一台机器上更新插件时,在拉动更改后没有任何更新。使用git跟踪cordova插件可以解决问题,但看起来非常糟糕。目前我只跟踪config.xml。

当我尝试执行时: cordova plugin add cordova-plugin-my-plugin它只显示如下列表:

...
skipping existing file: android-1.png
skipping existing file: android-2.png
cp: dest file already exists: /Users/user/cordova-app/plugins/cordova-plugin-my-plugin/LICENSE
cp: dest file already exists: /Users/user/cordova-app/plugins/cordova-plugin-my-plugin/README.md
...

所以最终每个插件都有一个驴工作:

  • cordova plugin rm cordova-plugin-my-plugin
  • cordova plugin add cordova-plugin-my-plugin@1.2.3

有没有人解决过这个问题?

3 个答案:

答案 0 :(得分:1)

使用cordova plugin add cordova-plugin-my-plugin@1.2.3 --save - 这会将插件npm名称(或本地路径或网址)与版本一起放入config.xml
然后cordova prepare将以保存的版本恢复插件。

有关详细信息,请参阅https://cordova.apache.org/docs/en/6.x/platform_plugin_versioning_ref/index.html#saving-plugins

答案 1 :(得分:1)

我遇到了同样的问题(将安装的插件与多台计算机上的config.xml保持同步)。

我创建了一个工具 - cordova-check-plugins - 允许您这样做:

$ npm install -g cordova-check-plugins

在v2.0.0中,指定--target=config会检查本地安装的插件的版本与config.xml中指定的插件的版本,因此您可以查看哪些本地安装的插件与配置相关已过时。 XML。

要将本地插件更新为config.xml中指定的版本,请使用:

$ cordova-check-plugins --target=config --update=auto

如果要强制执行此操作,即使本地安装的版本高于config.xml中指定的版本,也请使用:

$ cordova-check-plugins --target=config --update=auto --allow-downdate

您可以检查哪些插件具有远程可用的更新,以交互方式更新它们,并使用以下命令将更新的版本保存到config.xml:

$ cordova-check-plugins --update=interactive --unconstrain-versions --save

答案 2 :(得分:0)

长时间使用这些东西之后,100%情况下的方法是:

  • 删除插件/ *
  • 删除平台/ *
  • 致电cordova prepare