我正在尝试使用Cordova CLI 7安装Cordova插件。
此插件上没有package.json文件,因此在将其添加到项目时会引发错误。
我尝试使用plugman转换config.xml文件。它适用于Android,但它不适用于iOS。我觉得我在package.json文件中的config.xml中缺少一些配置。
有没有办法安全地转换package.json文件中的config.xml?或者使用config.xml文件安装它的方法?
由于
答案 0 :(得分:8)
是的,自Cordova 7以来,默认情况下使用cordova-fetch执行平台和插件的安装,后者又使用npm install添加/删除模块。因此默认情况下需要package.json。但是您应该能够使用 nofetch 参数添加缺少package.json文件的插件,这会强制Cordova使用旧方法,请注意此参数已在cordova 8.0.0中删除:
cordova plugin add cordova-plugin-camera --nofetch
答案 1 :(得分:2)
对我来说,添加像这样的自定义插件
cordova plugin add .\custom-plugins\my-plugin --nofetch
由于某种原因,这对我来说不适用于MAC。
我试图为Android构建所有文件,然后复制除node_modules和平台之外的所有文件,然后执行'cordova build ios'它似乎可以使用自定义插件构建。不是我所知道的最好的方式,但是一旦添加了插件,我就可以继续前进。如果你让它工作,请分享。
答案 2 :(得分:2)
--nofetch
选项:https://issues.apache.org/jira/browse/CB-13055
如果您已经安装了Cordova 8.x.x,那么可以将其降级到7.1.0版,然后使用npm install -g cordova@7.1.0
选项。
运行以下命令将Cordova降级为7.1.0:
npm uninstall -g cordova
npm install -g cordova@7.1.0
如果上述命令不起作用,请先尝试卸载cordova,然后再安装cordova版本7.1.0:
cordova --version
然后,检查Cordova版本:
{
"access_key": "fsdf7767sdfsdkjnkjsdf83",
"places": [
{
"attraction_names": "Taj Mahal",
"visitors_count_per_year": 1598464,
"address": "Agra, India",
"images": [
{
"image": "http://www.tajmahal.gov.in/images/View_taj_mahal/night1.jpg"
},
{
"image": "http://charismaticplanet.com/wp-content/uploads/2017/06/Original-Tajmahal.jpg"
}
]
},
{
"attraction_names": "Tanjavur Temple",
"visitors_count_per_year": 351321321,
"address": "Tamil Nadu, India",
"images": [""]
},{
"attraction_names": "CharMinar",
"visitors_count_per_year": 963252,
"address": "Agra, India",
"images": [
{
"image": "https://www.southtourism.in/assets/uploads/pages/charminar.jpg"
},
{
"image": "https://thumbnails.trvl-media.com/Zz4GovwBjpcnWi5tytMvwOZ3bm8=/768x432/images.trvl-media.com/media/content/shared/images/travelguides/destination/6053329/Hyderabad-And-Vicinity-68046.jpg"
}
]
}
]