编译失败; 请参阅编译器错误输出以获取详细信

当我尝试编译build.xml文件时,下面的错误是:

建筑失败

C:\Users\workspace\testrepo\src\build.xml:36: Compile failed; see the compiler error output for details. at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1150) at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:912) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) 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:390) at org.apache.tools.ant.Target.performTasks(Target.java:411) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) at org.apache.tools.ant.Project.executeTarget(Project.java:1368) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.eclipse.ant.internal.launching.remote.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.eclipse.ant.internal.launching.remote.InternalAntRunner.run(InternalAntRunner.java:424) at org.eclipse.ant.internal.launching.remote.InternalAntRunner.main(InternalAntRunner.java:138) 

有人能帮我吗 ?

在构建期间早期发生了编译错误。 在同一输出日志文件中查找该错误并尝试修复它。

要查看给定命令下的日志使用中的编译错误:

 d:\yourdirectory of checkout>ant clean deploy>log.txt 

它将在您的结帐目录中创建一个完整的日志。 所以现在你可以检查那里的实际错误。

以下解决方案对我有益:

1)定义以下类:

 package somepackage; import org.apache.tools.ant.taskdefs.Javac; import org.apache.tools.ant.types.Commandline; import org.eclipse.jdt.core.JDTCompilerAdapter; public class JDTCompiler15 extends JDTCompilerAdapter { @Override public void setJavac(Javac attributes) { if (attributes.getTarget() == null) { attributes.setTarget("1.6"); } if (attributes.getSource() == null) { attributes.setSource("1.6"); } super.setJavac(attributes); } // THIS METHOD IS RESPONSIBLE FOR PRINGTING THE ERRORS/WARNING. @Override protected void logAndAddFilesToCompile(Commandline cmd) { super.logAndAddFilesToCompile(cmd); System.err.println(cmd.toString()); } } 

2)添加以下VM参数:-Dbuild.compiler = somepackage.JDTCompiler15

如果您使用Weblogic生成客户端,则必须将“weblogic.jar”从安装目录添加到Additional Classpath中,以便Ant知道Ant.tools ….的存在位置。

我遇到了同样的问题,我试图解决这个问题而不是将其添加为额外的类路径,因为我将所有的jar复制到我的项目中,但仍然遇到此错误。

在我的例子中,在类中有一个未使用的import语句,其包在其他地方找不到但是被复制了,因为我从我的另一个项目中复制了该类。 它是否在错误日志中列为“未找到包”,即使错误日志本身不明确。 我不得不搜索我案例中生成的日志的所有警告。