Я создал библиотеку (страну) в gitlab, которую я хочу установить в другом проекте. Эта библиотека использует другую мою библиотеку (dataloader). Когда я запускаю npm i в моем проекте, он устанавливает страну, но затем создает еще один node_modules внутри страны с загрузчиком данных. Я хочу библиотеку загрузчика данных в главном node_modules. Я не могу понять, почему пакет dataloader не включается в проект node_modules
Example Project
|
+--node_modules
|
+--country
|
+--node_modules
|
+--dataLoader
но когда я пытаюсь использовать npm, установить git + http://xxxxxxxxx/countries.git#master создать структуру папок, какую я хочу.
или
опубликуйте этот репозиторий dataloader на npm и используйте путь к версии dataloader в package.json, затем я запускаю npm install, затем создаю структуру папок, какую я хочу.
Example Project
|
+--node_modules
|
+--country
+--dataLoader
Страна Package.json
{
"name": "countries",
"version": "1.0.0",
"description": "An array of countries contains Iso country code,country name,has postal code(boolean value),zip regex etc",
"main": "index.js",
"scripts": {
"test": "CONFIGURATION='test/testConfig.json' mocha"
},
"dependencies": {
"dataloader": "git+http://xxxxxxxxxx/foundation/reference-data/dataloader.git#master",
"lodash": "^4.17.11"
},
"devDependencies": {
"chai": "^4.2.0",
"mocha": "^6.0.2"
}
}
Пример проекта package.json
{
"name": "example",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "env NODE_ENV='debug' node country.js"
},
"repository": {
"type": "git",
"url": "https://git.xxxx.com/xxx/xx/example.git"
},
"author": "",
"standard": {
"env": [
"mocha"
]
},
"license": "ISC",
"dependencies": {
"countries": "git+http://xxxxx/foundation/reference-data/countries.git#master"
}
}
Я ожидаю, что при запуске npm будет создана структура папок установки, как показано ниже, но я не хочу публиковать свою библиотеку на npm, я хочу, чтобы она была приватной на gitlab
Example Project
|
+--node_modules
|
+--country
+--dataLoader