You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Mark Veenstra (JIRA)" <ji...@apache.org> on 2017/10/27 12:52:00 UTC
[jira] [Created] (CB-13503) Problems with using plugins from local
file system
Mark Veenstra created CB-13503:
----------------------------------
Summary: Problems with using plugins from local file system
Key: CB-13503
URL: https://issues.apache.org/jira/browse/CB-13503
Project: Apache Cordova
Issue Type: Bug
Components: AllPlatforms, cordova-fetch
Affects Versions: cordova@7.1.0
Reporter: Mark Veenstra
Priority: Blocker
I am struggling to get up and running with {{cordova@7.1.0}} sometime now. Maybe I am doing something wrong here but I can't figure it out. It seems to me something is going wrong with locally defined plugins that needs to be installed and the way it is saved into {{package.json}}.
So to get upgraded I first installed the latest version {{npm install -g cordova@7.1.0}}. Then I did a {{cordova prepare}}.
This {{prepare}} failed, after [some digging and trying](https://github.com/dpa99c/cordova-diagnostic-plugin/issues/245) it seemed that some locally plugins that needs to be installed into the project are interrupting other plugins. So I needed to disable the {{cordova-fetch}}. I set this globally with {{cordova config set fetch false}}.
After this config change the {{codova prepare}} command went all fine. So I thought this is it.
But when I tried to let my project be build by my CI server it failed on installating NPM packages.
Because a {{npm install}} command will install the dependencies defined in {{package.json}} it will install the cordova plugins also. But in the beginning my plugins are in there like this:
{code:json}
{
"name": "myApp",
"version": "1.0.0",
"description": "myApp description",
"dependencies": {
"cordova-android": "6.3.0",
"cordova-browser": "5.0.1",
"cordova-ios": "4.5.2",
"cordova-plugin-myplugin": "resources/cordova-plugin-myplugin",
"cordova-plugin-myplugin-locker": "resources/cordova-plugin-myplugin-locker"
},
"devDependencies": {
},
"scripts": {
},
"cordova": {
"platforms": [
"browser",
"android",
"ios"
],
"plugins": {
"cordova-plugin-myplugin": {},
"cordova-plugin-myplugin-locker": {}
}
}
}
{code}
With above {{npm install}} fails and tries to get the dependecies from git, which is incorrect. So I search the {{package.json}} definition and they say I should put {{file:}} in front of it, like this:
{code:json}
{
"name": "myApp",
"version": "1.0.0",
"description": "myApp description",
"dependencies": {
"cordova-android": "6.3.0",
"cordova-browser": "5.0.1",
"cordova-ios": "4.5.2",
"cordova-plugin-myplugin": "file:resources/cordova-plugin-myplugin",
"cordova-plugin-myplugin-locker": "file:resources/cordova-plugin-myplugin-locker"
},
"devDependencies": {
},
"scripts": {
},
"cordova": {
"platforms": [
"browser",
"android",
"ios"
],
"plugins": {
"cordova-plugin-myplugin": {},
"cordova-plugin-myplugin-locker": {}
}
}
}
{code}
Now NPM finds the dependecies OK, but now when I do a {{cordova prepare}} again it throws an error that the plugin can't be installed from {{file:resources/cordova-plugin-myplugin}}.
So I get stuck into different needs for different tools. Any ideas?
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org