Kompilasi gagal; lihat output kesalahan kompiler untuk detailnya

Ketika saya mencoba mengkompilasi file build.xml, kesalahan di bawah ini terjadi:

BANGUN GAGAL

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)

Dapatkah seseorang membantu saya?

Larutan

Ada kesalahan kompilasi yang terjadi sebelumnya selama build. Cari kesalahan itu dalam file log output yang sama dan cobalah untuk memperbaikinya.

Komentar (14)

Solusi berikut ini berhasil baik bagi saya:

  1. Tentukan kelas berikut ini:
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());
    }

}
  1. Tambahkan parameter VM berikut: -Dbuild.compiler=somepackage.JDTCompiler15
Komentar (1)

Jika Anda menggunakan Weblogic untuk membuat klien, Anda harus menambahkan "weblogic.jar &" dari direktori instalasi ke dalam Classpath Tambahan, sehingga Ant akan tahu di mana Ant.tools.... berada.

Saya mendapat masalah yang sama dan saya mencoba untuk memecahkan masalah ini dengan tidak menambahkannya sebagai classpath tambahan karena saya menyalin semua jar ke dalam proyek saya, tetapi masih mendapatkan kesalahan ini.

Komentar (0)