我需要从.bat文件调用Closure Compiler传递一个标志language_in=ECMASCRIPT5
我使用以下脚本但是收到错误
java.lang.classnotfoundexception: com.google,javascript.jscomp.SourceFile
我想知道:
java -Xms256m -Xmx256m -cp "%~dp0../shrinksafe/js.jar";"%~dp0../closureCompiler/compiler.jar --language_in=ECMASCRIPT5";"%~dp0../shrinksafe/shrinksafe.jar" org.mozilla.javascript.tools.shell.Main "%~dp0../../dojo/dojo.js" baseUrl="%~dp0../../dojo" load=build %*
答案 0 :(得分:1)
正如the documentation所述:
(ClassNotFoundException)当应用程序尝试使用以下命令通过其字符串名称加载类时抛出:
- 类Class。中的forName方法。
- ClassLoader类中的findSystemClass方法。
- ClassLoader类中的loadClass方法。
我认为正在发生的事情是,由于代码在省略标志时起作用,因此变量ECMASCRIPT5
是在compiler.jar中定义的,您可能不会将其包含在类路径中。< / p>
您可以尝试将compiler.jar放置到WEB-INF / lib中,以便将其与您的应用程序一起部署,以便在执行时可以访问。