Skip to content

Commit

Permalink
[DRAFT] An idea how to restructure JDT core to get proper ecj bundle
Browse files Browse the repository at this point in the history
The org.eclipse.jdt.core.ecj.validation was a "dummy" bundle so far,
used only to validate compilation issues in IDE.

That one should be renamed (org.eclipse.jdt.core.ecj.validation ->
org.eclipse.jdt.core.compiler.batch) and be a proper maven library.

It is actually the ecj compiler library without any dependencies, that
could be consumed by JDT and the rest of the world.

It must be required and re-exported by JDT core.
Unfortunately, there are two split packages:

org.eclipse.jdt.internal.compiler
org.eclipse.jdt.internal.compiler.parser

Not sure what's the best way to deal with it, may be rename those
smaller packages in in jdt.core to avoid split packages issue, they are
internal, so it shouldn't break many clients (but most likely will, like
Xtext), but I haven't tried it and don't know if they use package
protected API.

org.eclipse.jdt.compiler.apt and org.eclipse.jdt.compiler.tool were
fragments of jdt.core, now they would be inside
org.eclipse.jdt.core.compiler.batch.

TODO:

1) What I did NOT tried is to re-write all the magic scripts that build
and package separated ecj library out of jdt.core.
2) The 3 antadapter classes are now split over ecj and jdt core, because
BuildJarIndex.java and CheckDebugAttributes.java depend on JDT core
code.
3) ecj.1 and build_ecj.xml aren't touched yet. ecj.1 was touched last
time 2017, it seem to be used for man pages.
4) pom from jdt core will need an adoption.
5) org.eclipse.jdt-feature need to be updated
6) TBC

See
- eclipse-jdt#181
- eclipse-platform/eclipse.platform.ua#18
  • Loading branch information
iloveeclipse committed Oct 20, 2022
1 parent 53f5b7b commit 80a80c2
Show file tree
Hide file tree
Showing 687 changed files with 690 additions and 1,435 deletions.
5 changes: 3 additions & 2 deletions org.eclipse.jdt.compiler.apt.tests/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,10 @@ Bundle-Vendor: %providerName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Bundle: org.junit,
org.eclipse.jdt.core;bundle-version="3.27.0",
org.eclipse.jdt.core;bundle-version="3.32.0",
org.eclipse.core.resources,
org.eclipse.core.runtime
org.eclipse.core.runtime,
org.eclipse.jdt.core.compiler.batch;bundle-version="3.11.0"
Export-Package: org.eclipse.jdt.compiler.apt.tests,
org.eclipse.jdt.compiler.apt.tests.annotations,
org.eclipse.jdt.compiler.apt.tests.processors.base,
Expand Down

This file was deleted.

113 changes: 0 additions & 113 deletions org.eclipse.jdt.compiler.apt/.settings/org.eclipse.jdt.core.prefs

This file was deleted.

15 changes: 0 additions & 15 deletions org.eclipse.jdt.compiler.apt/META-INF/MANIFEST.MF

This file was deleted.

25 changes: 0 additions & 25 deletions org.eclipse.jdt.compiler.apt/build.properties

This file was deleted.

15 changes: 0 additions & 15 deletions org.eclipse.jdt.compiler.apt/compiler_apt_fragment.properties

This file was deleted.

Loading

0 comments on commit 80a80c2

Please sign in to comment.