Eclipse和Maven编译差异

时间:2011-12-19 17:56:06

标签: java eclipse maven

我已将简单的代码写入文件添加到开源项目(Saiku)中,在我的更改构建和编译之前干净利落。

程序在Centos 5.3 Eclipse中完全编译(没有红色X)。

但是,重新运行maven构建脚本时,会生成编译器错误(图1):

Maven是否以与Eclipse不同的方式编译java项目?

图表1:

[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[67,8] illegal start of type
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[67,11] ';' expected
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[70,14] <identifier> expected
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[70,15] illegal start of type
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[71,14] <identifier> expected
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[73,14] <identifier> expected
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[75,11] illegal start of type
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[79,2] invalid method declaration; return type required
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[130,15] class, interface, or enum expected
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[130,43] class, interface, or enum expected
[ERROR] 
[ERROR] /usr/local/.m2/repository/saiku/saiku-core/saiku-service/src/main/java/org/saiku/olap/util/formatter/HierarchicalCellSetFormatter.java:[131,8] class, interface, or enum expected
[ERROR] 

图表2:

  import java.io.*; to the import section

  try {
     FileWriter fstream = new FileWriter("/usr/local/dailycandy/biserver.txt");
     BufferedWriter out = new BufferedWriter(fstream);
     out.write("Hello Java");
     out.flush();
     //Close the output stream
     out.close();
  }
     catch (Exception e)
  {
 //Catch exception if any
 System.err.println("Error: " + e.getMessage());
 }

1 个答案:

答案 0 :(得分:0)

您添加的代码不在方法/构造函数/块等内。这不是有效的Java,因此无法编译。

你需要用以下内容包围它:

public void doSomething
{
    // Insert code here
}

或者,您可以将它放在现有方法或构造函数中,具体取决于您何时需要执行此代码。

为什么Eclipse不突出显示此错误超出了我的范围。它通常会报告这一点。尝试刷新项目或清理/重建,你会发现它将无法编译。