我在NetBeans中有一个WAR项目,它使用Karma和Jasmine对JavaScript文件进行单元测试。该平台是Mac OS X.在Mavericks下,它们应该可以运行,但在我升级到Yosemite后,它不再有效,并显示错误消息:
Failed to execute goal com.kelveden:maven-karma-plugin:1.8:start (default) on project Insight-war: There was an error executing Karma. Cannot run program "karma" (in directory "/Users/thja/Documents/Projects/kpi2010_core/WebGIS/Insight-war"): error=2, No such file or directory -> [Help 1]
它尝试执行以下命令,如日志中所示:
karma start /Users/thja/Documents/Projects/kpi2010_core/WebGIS/Insight-war/src/main/webapp/config/karma.conf.js --browsers PhantomJS --reporters dots,junit --single-run --no-auto-watch --colors true
我可以在终端中运行完全相同的命令而不会出现问题 - 它会执行并提供测试结果。 which karma
给出结果/usr/local/bin/karma
,/usr/local/bin
是全局PATH的一部分。
是否可以为此做任何修复,或者我只是必须在Maven Karma插件页面上发布问题?
平台:
答案 0 :(得分:1)
似乎与Yosemite关闭/etc/launchd.conf有关,因此NetBeans没有获得正确的PATH变量 - 因此与Karma没有直接关系。
我通过在netbeans.conf中设置PATH=${PATH}:/usr/local/bin
(在NetBeans应用程序包中)来修复它。然后构建脚本的业力部分在NetBeans中成功运行。