Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[eclipse-dev] Early access builds with Java 8 support available.

Hello !

The Eclipse JDT/Core team is pleased to announce the availability of early access builds
with support enabled for the following Java 8 features.

What work is complete and ready to be tested ?
-----------------------------------------------------------

    - JSR308 - Type Annotations.
    - JEP120 - Repeating Annotations.
    - JEP118 - Method Parameter Reflection.
    - JSR269 - Pluggable Annotation Processor API & javax.lang.model API enhancements for Java 8.
    - Support for - Code completion, code selection/navigation, search engine for all of the above
    - Code formatter and code reconciler (instant feedback with error/warnings as you type) for all of Java 8.
    - IDE enablement support (AST API's, programmatic AST rewriting API support etc) for all of Java 8.
    - JSR308 type annotations based static null analysis (substantially complete, open issues exist)  
    - Support for non-abstract interface methods (default & static methods from JSR335)

We also announce partial support for:

    - JSR335 - Except as relates to overload resolution and type inference. (Significant gaps exist in these
       two areas, see below)
     
What work remains:
------------------------

The major pieces that are still under development and so are NOT a part of early access release are:

    - JSR335 - Overload resolution support and type inference support.
    - Full fledged IDE enablement for Java 8.
    - Full fledged debugger support for Java 8.

On JSR335, until the last week of Sep 2013, we were blocked by several issues due to incomplete
specification of Part G (Type Inference). Our representatives in the JSR 335 expert group are working
with the specification lead and other experts to get these issues sorted out and clarified. We are
proceeding on the basis of clarifications we have received for our questions regarding the missing parts
and the much more complete draft made available to us circa last week of Sep 2013.

Work on overload resolution and type inference and their constituent sub-projects are in various stages
of evolution in the contributor's private branches. These are not yet ready for public consumption and are
so not included in the present early access preview builds. As a result, even some basic scenarios in
JSR335 that require overload resolution to be wired in or type inference to be wired in may not
work well at the moment. We are working to remedy this situation soon.

Likewise, the projects to fully support Java 8 in the IDE and the debugger are progressing swiftly. We expect to
refresh the early access binaries once these pieces are cooked and ready to test allowing developers sufficient
time to try out the early access versions and report back issues and have them addressed well in time for the GA
release in March 2014.

Thanks for your patience.

Terms & Conditions:
-------------------------

Please be advised that these downloads are offered under these terms in addition to the usual
Eclipse SDK download/license terms:

"This is an implementation of an early-draft specification developed under the Java
Community Process (JCP) and is made available for testing and evaluation purposes
only. The code is not compatible with any specification of the JCP."

We advise that this early access version be used only in a test/evaluation mode and not
in a development environment.

How to get hold of the early access binaries ?
--------------------------------------------------------

We recommend that you start with a clean install of

    - Either 4.3.1 or 4.4 M2 SDK
    - Update the JDT/Core, JDT/UI bundles from  http://dist.springsource.com/snapshot/TOOLS/java8/e43
      This update site is set up to periodically rebuild and package the relevant projects from the top of the
      BETA_JAVA8 development branch.
 
Defect reports should go to: https://bugs.eclipse.org/bugs/enter_bug.cgi?product=JDT. At this time, we welcome
defects in all areas acknowledged as complete. It is not useful to receive defect reports for areas called out as
not wired in.

Acknowledgments
----------------------

The Eclipse team would like to place on record our sincere appreciation and thanks to the following individuals
who went above and beyond the call of duty to roll up their sleeves and contribute handsomely to meeting this
significant milestone. This has been a truly global, truly open source effort:

    - Stephan Herrmann
        - Default methods support,
        - Method contract verification work.
        - On going type inference work
        - Type annotation walker abstraction.
       - JSR308 annotations based null analysis.
       - Active involvement /consultation in various other tasks.
   
    - Olivier Thomann:
      - Original support for type annotations code generation from the Java SE7 days.
      - Ongoing consultations, monitoring mailing lists, patches etc.
   
    - Jesper Moller:
        - Various pieces in JSR 335 semantic analysis.
        - Foundation work for JSR335 code generation.
        - Java 8 code formatter support,
        - JEP 118 - Parameter reflection support
        - JEP 120 - repeating annotations support.

  - Andrew Clement
        - Dusting up and reviving Olivier's original work on 308 code generation and bringing it up to date
          with respect to the numerous specification changes in 3+ years.
       - Type annotations retrieval from class files.
       - Maintaining an update site for early access users.
       - Various bug fixes.

    - Walter Harley:
        - Consultations for the JSR269/APT enhancement work.

    - Steve Francisco
        - For ongoing support on the administrative side of things.

Thanks!
JDT/Core team.

Back to the top