首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >com.google.common.base.Preconditions.checkArgument : CompilerOptions: NoSuchMethodError

com.google.common.base.Preconditions.checkArgument : CompilerOptions: NoSuchMethodError
EN

Stack Overflow用户
提问于 2013-11-06 17:05:53
回答 1查看 2.7K关注 0票数 1

有人知道为什么会出现这个错误吗?

代码语言:javascript
复制
Exception in thread "main" java.lang.NoSuchMethodError:     com.google.common.base.Preconditions.checkArgument(Z)V
    at com.google.common.collect.Lists.computeArrayListCapacity(Lists.java:105)
    at com.google.common.collect.Lists.newArrayList(Lists.java:98)
    at com.google.javascript.jscomp.ComposeWarningsGuard.<init>    (ComposeWarningsGuard.java:83)
    at com.google.javascript.jscomp.CompilerOptions.<init>(CompilerOptions.java:791)

代码

代码语言:javascript
复制
import java.io.File;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.logging.Level;

import com.google.javascript.jscomp.CompilationLevel;
import com.google.javascript.jscomp.CompilerOptions;
import com.google.javascript.jscomp.Compiler;
import com.google.javascript.jscomp.SourceFile;

public class MyJavaScriptCompressor {

    private Compiler cloJsCompressor;

    public MyJavaScriptCompressor() {
    }

    public String closureCompress(File source) {
        CompilerOptions opt = new CompilerOptions();
        int mode = 1;
        CompilationLevel.SIMPLE_OPTIMIZATIONS.setOptionsForCompilationLevel( opt );

        Compiler.setLoggingLevel(Level.OFF);
        cloJsCompressor = new Compiler();
        cloJsCompressor.disableThreads();

        List<SourceFile> externs = Collections.emptyList();
        List<SourceFile> inputs = Arrays.asList(SourceFile.fromFile(source));

        cloJsCompressor.compile( externs, inputs, opt );

        return cloJsCompressor.toSource();
    }
}

生成路径包括

代码语言:javascript
复制
compiler.jar
jsoup.jar
yuicompressor.jar

我怎么才能摆脱它?!

编辑:

错误出现在这一行中:

代码语言:javascript
复制
CompilerOptions opt = new CompilerOptions();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-08 17:01:01

解决了..。

eclipse项目根目录中的.classpath缺少了该行:

代码语言:javascript
复制
<classpathentry kind="lib" path="lib/compiler.jar"/>

我不知道--为什么-- eclipse不能自动修复它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19818215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档