我們有一個公司代理,它阻止我按照原樣使用maven-frontend-plugin。如何將nodejs和npm可執行文件上傳到artifactory
問題是,要獲取npm和bower依賴關係,我們使用內部Artifactory,所以我們不應該有任何代理設置。但是實際的可執行文件被直接提取以獲取它們,我們需要代理。前端插件似乎不支持特定域的例外情況。
那麼是否有一種簡單的方法將npm和nodejs可執行文件上傳到我們的內部工件,以便我們可以完全跳過這個代理?或者解決此問題的另一種方法?
編輯
我在這裏添加解決方案以方便,因爲我需要修改我在下面批准了答案。
在Artifactory中設置兩個遠程存儲庫,一個存儲到nodejs(https://nodejs.org/dist/
),另一個存儲到npm(https://registry.npmjs.org/npm/-/
)。
編輯您的Maven的前端 - 插件配置:
<execution>
<!-- optional: you don't really need execution ids,
but it looks nice in your build log. -->
<id>install node and npm</id>
<goals>
<goal>install-node-and-npm</goal>
</goals>
<!-- optional: default phase is "generate-resources" -->
<phase>generate-resources</phase>
<configuration>
<nodeVersion>v0.12.1</nodeVersion>
<npmVersion>2.14.1</npmVersion>
<!-- use the URL for the repository you created in step 1 -->
<nodeDownloadRoot>https://artifactory.my company.com/artifactory/nodejs.dist/</nodeDownloadRoot>
<npmDownloadRoot>https://artifactory.my company.com/artifactory/npm.dist/</npmDownloadRoot>
</configuration>
</execution>
這是可能的僅僅使用正回購的NodeJS(但當時故宮僅適用於1.4.9版本)更改npmDownloadRoot到:
<npmDownloadRoot>https://artifactory.my company.com/artifactory/nodejs.dist/npm/</npmDownloadRoot>
而且不要忘記從你的Maven刪除代理服務器設置settings.xml
好極了,應該是這麼簡單,剩下的唯一煩人的事情就是獲得更新版本的npm(看起來像nodejs dist repo只有版本1.4.9)。你不會知道這個網址嗎?谷歌搜索給了我噸無關緊要的命中。 – osundblad
找到它'https://registry.npmjs.org/npm/ - /'結尾的' - /'很重要 – osundblad