通过JSPM安装后运行可执行文件

时间:2015-02-23 02:25:06

标签: jspm

我试图了解在使用JSPM安装模块后如何运行可执行文件。例如,如果我运行jspm install gulp,那么我希望能够运行以下命令:

./jspm_packages/npm/gulp\@3.8.11/bin/gulp.js

实际上,如果jspm会处理这个问题会更好,以便在以下位置有一个隐藏的bin目录,其中包含所有检索到的可执行文件(例如gulp):

./jspm_packages/.bin

这样我就可以在我的PATH环境变量中添加一个允许这些可执行文件运行的内容。

目前,当我尝试运行jspm安装的gulp时,收到以下错误消息:

[jspm-test]$ ./jspm_packages/npm/gulp\@3.8.11/bin/gulp.js 
./jspm_packages/npm/gulp@3.8.11/bin/gulp.js: line 1: /bin: Is a directory
./jspm_packages/npm/gulp@3.8.11/bin/gulp.js: line 2: syntax error near unexpected token `('
./jspm_packages/npm/gulp@3.8.11/bin/gulp.js: line 2: `(function(process) {'

我还有其他方法可以解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

根据我的经验,JSPM很奇怪,因为JSPM更适合于您的应用程序的deps,它们实际上是在浏览器中生成的。我在我的项目中做的是安装模块,我需要使用NPM运行脚本/ dev(gulp,karma,express等),然后你可以用节点运行它们:

node ./node_modules/karma/bin/karma.js <args>

这有点奇怪,但如果你认为它是NPM处理本地,&#34;可执行文件&#34;在生产中没有使用的代码和JSPM处理将要捆绑和发送的应用程序的代码是有意义的。

答案 1 :(得分:0)

我同意@SleepyProgrammer的回应。

JSPM是一个专门用于前端依赖的包管理器,就像bower一样。

使用项目的前端依赖项安装gulp很奇怪 你宁愿用npm作为开发依赖项安装gulp,karma,express等,在你的本地开发服务器上捆绑和处理东西,然后把结果作为js,css,html文件提供......

一个简单的$(npm bin)/gulp -v制作

话虽这么说,我用jspm安装了酶,我的测试能够导入它。

如果要在节点项目中使用jspm,可以始终使用此命令:

jspm run script

请参阅文档:http://jspm.io/docs/nodejs-usage.html