You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Thomas Brian (JIRA)" <ji...@apache.org> on 2018/02/16 19:43:00 UTC
[jira] [Commented] (CB-13503) Problems with using plugins from
local file system
[ https://issues.apache.org/jira/browse/CB-13503?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16367794#comment-16367794 ]
Thomas Brian commented on CB-13503:
-----------------------------------
I have this problem too.
I think I managed to narrow it down to the trimID function of cordova-fetch/index.js. That function tries to read the package.json of the plugin being installed but in case of "file:relative/path" format it doesn't strip the file: prefix and the call to fs.existsSync("file:relative/path/package.json") fails.
I'm not sure how to send a pull request/patch to fix this issue and would appreciate tips on that. Thanks!
> 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}
> {
> "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}
> {
> "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
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org