2016-06-15 53 views
1

我們正在將應用服務器從運行java 1.6的Weblogic 11g升級到運行java 1.8的Weblogic 12c。我們的ANT構建過程中的一個步驟是使用YUI Compressor(版本2.4.8)來縮小我們的CSS和JS文件。縮小CSS文件的步驟工作正常。但是,當我們試圖來縮小JS文件,我們得到以下錯誤:java.lang.NoSuchFieldError:使用yuicompressor來縮小JS文件的實例異常

java.lang.NoSuchFieldError: instance 
    at org.mozilla.javascript.CompilerEnvirons.<init>(CompilerEnvirons.java:48) 
    at com.yahoo.platform.yui.compressor.JavaScriptCompressor.parse(JavaScriptCompressor.java:310) 
    at com.yahoo.platform.yui.compressor.JavaScriptCompressor.<init>(JavaScriptCompressor.java:533) 
    at com.yahoo.platform.yui.compressor.YUICompressTask.doCompression(YUICompressTask.java:202) 
    at com.yahoo.platform.yui.compressor.YUICompressTask.execute(YUICompressTask.java:101) 
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) 
    at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:497) 
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
    at org.apache.tools.ant.Task.perform(Task.java:348) 
    at org.apache.tools.ant.Target.execute(Target.java:357) 
    at org.apache.tools.ant.Target.performTasks(Target.java:385) 
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) 
    at org.apache.tools.ant.Project.executeTarget(Project.java:1306) 
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 
    at org.apache.tools.ant.Project.executeTargets(Project.java:1189) 
    at org.apache.tools.ant.Main.runBuild(Main.java:758) 
    at org.apache.tools.ant.Main.startAnt(Main.java:217) 
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) 
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) 

當我看着裏面的YUICompressor -2.4.8.jar類造成的錯誤,我看到CompilerEnvirons.java長相該行48像這樣:

this.errorReporter = DefaultErrorReporter.instance; 

但是,當我檢查類DefaultErrorReporter.java它是空的。整個類包括以下內容:

class 
{ 
} 

Java 1.6似乎並不關心這個,但Java 1.8的確。

我不是這個壓縮機工具的專家,所以我想知道是否有人對可能導致這種情況的任何想法。如果我需要提供更多信息,我很樂意。

感謝。

回答

0

這竟然是一個腐敗的JAR文件。