blob: 6df627411af2fb99bb65ffb3f4ea97f4fcd0707e [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="copyright" content="Copyright (c) Eclipse contributors and others 2016. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page."/>
<meta http-equiv="Content-Language" content="en-us"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<link rel="STYLESHEET" href="news.css" type="text/css"/>
<style type="text/css">
body {max-width: 900px;}
table.news col.title {width: 30%;}
/*img {max-width: 520px;}*/
table.news {table-layout: fixed; border-collapse: collapse; width: 100%;}
table.news td {border-top: solid thin black; padding: 10px; overflow: visible;}
table.news tr {vertical-align: top;}
table.news tr td.section {font-size: 20px; font-weight: bold;}
table.news tr td.title {vertical-align: top; font-weight: bold;}
table.news tr td.content {vertical-align: top;}
ul {padding-left: 13px;}
</style>
<title>Eclipse Project Neon - New and Noteworthy</title>
</head>
<body>
<h2>Plug-in Development Environment</h2>
<ul>
<li><a href="#dialogs-editors-views">Dialogs, Editors, and Views</a></li>
<li><a href="#declarative-services">OSGi Declarative Services</a></li>
<li><a href="#wizards">Wizards</a></li>
<li><a href="#APITools">API Tools</a></li>
</ul>
<table class="news">
<colgroup>
<col class="title" />
<col />
</colgroup>
<tbody>
<!-- ******************** Dialogs, Editors, and Views ********************** -->
<tr>
<td id="dialogs-editors-views" class="section" colspan="2"><h2>Dialogs, Editors, and Views</h2></td>
</tr>
<tr id="product-editor">
<td class="title">Product editor "Dependencies" tab renamed to "Content"</td>
<td class="content">
The "Dependencies" tab in the product editor was renamed to the more descriptive term "Content".
This avoids confusion with the "Dependencies" tab in the MANIFEST.MF editor.
<p>
<img src="images/producteditor.png" alt="New label for content in the product"/>
</p>
</td>
</tr>
<tr id="pde-debug-option-help">
<td class="title">Tooltips for options in Tracing dialog </td>
<td class="content">
In the <b>Tracing </b> tab of Eclipse launch configuration, the options now have tooltips which display
more information about that option.
<p>
<img src="images/pde-tracing-options-help.png" alt="" />
</p>
The information gets extracted from comments in the declaring bundle's .options file.
</td>
</tr>
<tr id="pde-project-explorer">
<td class="title">PDE perspective uses Project Explorer</td>
<td class="content">
The PDE perspective now uses the <b>Project Explorer</b> instead of the <b>Package Explorer</b> view by default.
</td>
</tr>
<tr id="pdebuildwarning">
<td class="title">Warnings for missing build entries for model fragments and the application model</td>
<td class="content">
If an Eclipse 4 model fragment or application model file is not included in the build.properties file,
PDE will issue warnings.
<p>
<img src="images/pdewarnings.png" alt="Build warnings"/>
</p>
</td>
</tr>
<tr id="pde-importpackages">
<td class="title">Import and export packages in Plug-in Manifest editor supports prefix wildcard matching by default</td>
<td class="content">
The import and export package dialog in the <b> Plug-in Manifest editor </b> uses wildcards by default. For example, to add
<code>org.eclipse.e4.core.services</code> as package dependency,
you can type in <code>services</code> instead of <code>*services</code>.
</td>
</tr>
<tr id="pde-plugin-image-browser-filter">
<td class="title">Plug-in Image Browser Filtering</td>
<td class="content">
In <b>Plug-in Image Browser</b> view, it is now possible to filter icons by
their full path or name.
<p>
Use the new ImageFilter field to provide the search criteria (? = any character, * = any string)
to find the icons with matching path or name.
</p>
<p>
<img src="images/pde-plugin-image-browser-filter.png" alt="" />
</p>
</td>
</tr>
<tr id="pde-image-browser-pagination">
<td class="title">Pagination control in Plug-in Image Browser</td>
<td class="content">
In the <b>Plug-in Image Browser</b>, at the end of the view, there are pagination controls
to move to the next page of images.
<p>
<img src="images/pde-plugin-image-browser-pagination.png" alt="" />
</p>
</td>
</tr>
<tr id="prompt-for-unsaved-features">
<td class="title">Product launch prompts for unsaved features</td>
<td class="content">
In case you have an unsaved feature included in your product configuration file,
PDE will prompt you to save it before the launch.
<p>
<img src="images/prompt-unsaved-feature-pde.png" alt=""/>
</p>
</td>
</tr>
<!-- ******************** OSGi Declarative Services ********************** -->
<tr>
<td id="declarative-services" class="section" colspan="2"><h2>OSGi Declarative Services</h2></td>
</tr>
<tr id="ds-annotations">
<td class="title">Support for OSGi Declarative Services Annotations</td>
<td class="content">
OSGi Declarative Services provide a powerful mechanism for developing complex, service-oriented
applications. With proper tooling, annotations, which were added to Declarative Services
in version 1.2, make it easy to generate and maintain the required component descriptor files.
<p>
When enabled, PDE automatically generates and updates Declarative Services component
descriptor files from appropriately annotated Java source. This is done without requiring
any additional builder to be configured in your project.
</p>
<p>
When you annotate your component implementation classes with <code>@Component</code>, and any
reference bind methods with <code>@Reference</code>, PDE will validate your annotations
and generate the corresponding component descriptor files. Any errors discovered during validation
are highlighted and reported.
</p>
<p>
<img src="images/ds-annotations.png" alt="" />
</p>
<p>
In addition, PDE will also maintain the project's MANIFEST.MF and build.properties file
-- generated component descriptor files are automatically added to the manifest
and included in the build.
</p>
<p>
To enable this feature, go to <b>Preferences</b> or <b>Project Properties &gt; Plug-in Development &gt; DS Annotations</b>
and check <b>Generate descriptors from annotated sources</b>.
</p>
</td>
</tr>
<tr id="ds-annotation-bapl">
<td class="title">DS Annotations Bundle-ActivationPolicy generation</td>
<td class="content">
The Declarative Service Annotations support can now be configured to generate the bundle header for lazy activation.
The <code>Bundle-ActivationPolicy: lazy</code> header is necessary when starting an Eclipse application that uses the Equinox launcher.
Otherwise, the bundle that provides the declarative service will not be started automatically and therefore the service won't be available.
In a plain OSGi environment, this header is not necessary and might not have any effect. Therefore, it can be configured via preferences
whether the header should be generated or not.
<p>
<img src="images/ds-annotations-bapl.png" alt="" />
</p>
</td>
</tr>
<tr id="ds-annotations-template">
<td class="title">Updated OSGi Declarative Services Example</td>
<td class="content">
The OSGi Declarative Services Example now uses annotations.
<p>
Instead of creating a Component Definition file for each component class and adding it
to the manifest and build.properties, the wizard creates component classes annotated with
the appropriate DS annotations, which are then used by PDE to automatically generate
the corresponding component descriptor files.
</p>
</td>
</tr>
<!-- ******************** Wizards ********************** -->
<tr>
<td id="wizards" class="section" colspan="2"><h2>Wizards</h2></td>
</tr>
<tr id="plugin-wizard-activator-creation">
<td class="title">New Plug-in wizard does not create activator by default</td>
<td class="content">
By default, the new plug-in wizard does not suggest the creation of an activator class anymore.
Functionality in activators can in most cases be replaced with other means (e.g. OSGi declarative services), and activators
can slow down the startup of an application.
</td>
</tr>
<tr id="e4wizard">
<td class="title">Retirement of the Eclipse 4 project wizard</td>
<td class="content">
As PDE offers now Eclipse 4 RCP templates, the separate Eclipse 4 project generation wizard has been retired.
</td>
</tr>
<tr id="plug-in-with-an-e4-swt-view">
<td class="title">Plug-in template with an Eclipse 4 SWT view</td>
<td class="content">
In the plug-in templates, it is now possible to choose:
plug-in with an Eclipse 4 SWT view.
<p>
To get this template, create a new plug-in project and answer 'no' to the question:
Would you like to create a Rich Client Application?
</p>
<p>
Then, the 'Plug-in with an Eclipse 4 SWT View' template will be proposed in the list:
</p>
<p>
<img src="images/plug-in-with-an-e4-swt-view.png" alt="" />
</p>
<p>
The generated plug-in will contain a model fragment with a sample E4 view that:
</p>
<ul>
<li> manages the single and the multiple selection using the injection mechanism</li>
<li> is added to any E3 compat or pure E4 application thanks to the 'xpath:/' notation</li>
<li> is present in the <b>Window &gt; Show view</b> dialog </li>
</ul>
</td>
</tr>
<tr id="plug-in-with-an-e4-handler">
<td class="title">Plug-in template with an Eclipse 4 Handler</td>
<td class="content">
In the plug-in templates, it is now possible to choose:
plug-in with an Eclipse 4 handler.
<p>
To get this template, create a new plug-in project and answer 'no' to the question:
Would you like to create a Rich Client Application?
</p>
<p>
Then, the 'Plug-in with an Eclipse 4 Handler' template will be proposed in the list:
</p>
<p>
<img src="images/plug-in-with-an-e4-handler.png" alt="" />
</p>
<p>
The generated plug-in will contain a model fragment with a sample E4 hello world command that appears:
</p>
<ul>
<li> in the 'E4 Handler' main menu </li>
<li> in the 'E4 Handler' submenu in any popup menu </li>
</ul>
</td>
</tr>
<!-- ******************** APITools ********************** -->
<tr>
<td id="APITools" class="section" colspan="2"><h2>API Tools</h2></td>
</tr>
<tr id="multi-version-baseline-support">
<td class="title">Multi-version support for API analysis builder</td>
<td class="content">
The API Analysis Builder now supports API baselines with multi-version bundles.
While doing API analysis for a bundle for which multiple versions exist in the baseline,
the comparisons are performed with the bundle in the baseline which best matches
the development bundle that is being built.
</td>
</tr>
</tbody>
</table>
<script type="text/javascript" src="scripts.js"></script>
<p style="text-align:center">
<a href="platform_isv.php">Previous</a> <a style="margin:1em" href=".">Up</a> <span style="color:#808080">Next</span>
</p>
</body>
</html>