blob: 8ab4832e24253b9ae6ecb4bacacb4f49b453d1d7 [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE 8]> <html lang="en" class="ie8"> <![endif]-->
<!--[if IE 9]> <html lang="en" class="ie9"> <![endif]-->
<!--[if !IE]><!-->
<html lang="en"> <!--<![endif]-->
<head>
<title>M2Eclipse | 1.7 Release Notes</title>
<!-- Meta -->
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="M2Eclipse provides tight integration for Apache Maven into the Eclipse IDE." />
<meta name="author" content="eclipse.org" />
<meta property="twitter:account_id" content="15710507" />
<!-- CSS Global Compulsory-->
<link rel="stylesheet" href="/m2e/assets/plugins/bootstrap/css/bootstrap.css" />
<link rel="stylesheet" href="/m2e/assets/css/style.css" />
<link rel="stylesheet" href="/m2e/assets/css/m2eclipse.css" />
<link rel="shortcut icon" href="/m2e/assets/img/favicon.ico" />
<!-- CSS Implementing Plugins -->
<link rel="stylesheet" href="/m2e/assets/plugins/font-awesome/css/font-awesome.css" />
<!-- GA -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-56202333-1', 'eclipse.org');
ga('send', 'pageview');
</script>
</head>
<body>
<div class="wrap">
<div class="header">
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="navbar-inner">
<div class="container">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-responsive-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/m2e/index.html">
<img id="logo-header" src="/m2e/assets/img/m2e_logo.png" alt="M2Eclipse" width="150" height="61" />
</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse navbar-responsive-collapse">
<ul class="nav navbar-nav navbar-left">
<li class="">
<a href="/m2e/m2e-news.html">News</a>
</li>
<li class="">
<a href="/m2e/m2e-downloads.html">Download</a>
</li>
<li class="">
<a href="/m2e/documentation/m2e-documentation.html">Documentation</a>
</li>
<li class="">
<a href="/m2e/m2e-community.html">Community</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div><!-- END header -->
<div class="margin-bottom-20"></div>
<div class="container">
<div class="margin-bottom-100"></div>
<div class="row">
<div class="col-md-3">
<div class="docNavigation affix">
<div class="margin-bottom-30"></div>
<h4 class="headline">Users</h2>
<ul class="unstyled">
<li><a href="/m2e/documentation/m2e-faq.html">FAQ</a></li>
<li><a href="/m2e/documentation/m2e-execution-not-covered.html">Execution Not Covered</a></li>
</ul>
<h4 class="headline">Developers</h2>
<ul class="unstyled">
<li><a href="/m2e/documentation/m2e-development-environment.html">Developement Environment Setup</a></li>
</ul>
<h4 class="headline">Extension Developers</h2>
<ul class="unstyled">
<li><a href="/m2e/documentation/m2e-extension-development.html">Getting Started</a></li>
<li><a href="/m2e/documentation/m2e-making-maven-plugins-compat.html">Making Maven Plugins Compatible</a></li>
</ul>
<h4 class="headline">Release Notes</h2>
<ul class="unstyled">
<li><a href="/m2e/documentation/release-notes-19.html">M2Eclipse 1.9</a></li>
<li><a href="/m2e/documentation/release-notes-18.html">M2Eclipse 1.8</a></li>
<li><a href="/m2e/documentation/release-notes-17.html">M2Eclipse 1.7</a></li>
<li><a href="/m2e/documentation/release-notes-16.html">M2Eclipse 1.6</a></li>
<li><a href="/m2e/documentation/release-notes-15.html">M2Eclipse 1.5</a></li>
</ul>
</div>
</div>
<div class="col-md-9 docs">
<p><a href="https://www.eclipse.org/m2e">M2Eclipse</a> released version 1.7.0 as part of the Eclipse Neon release train. <a href="https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&product=m2e&query_format=advanced&target_milestone=1.7.0%2FMars%20M1&target_milestone=1.7.0%2FNeon%20M2&target_milestone=1.7.0%2FNeon%20M3&target_milestone=1.7.0%2FNeon%20M4&target_milestone=1.7.0%2FNeon%20M5&target_milestone=1.7.0%2FNeon%20M6&target_milestone=1.7.0%2FNeon%20M7&target_milestone=1.7.0%2FNeon%20RC1&target_milestone=1.7.0%2FNeon%20RC2&target_milestone=1.7.0%2FNeon%20RC3&target_milestone=1.7.0%2FNeon%20RC4">49 issues</a> were fixed as part of this release. Even though M2EClipse 1.7.0 targets Eclipse Neon, it should still be compatible with Eclipse Mars. This release comes with some usability improvements and bug fixes worth highlighting:</p><h1><a href="#updated-versions-of-embedded-runtimes" name="updated-versions-of-embedded-runtimes">Updated versions of embedded runtimes</a></h1>
<ul>
<li>The embedded Apache Maven runtime has been updated to maven 3.3.9.</li>
<li>The embedded maven-archetype-plugin version was bumped to 2.4</li>
</ul><h1><a href="#autocompletion-for-directory-file-based-properties-in-the-pom-xml-editor" name="autocompletion-for-directory-file-based-properties-in-the-pom-xml-editor">Autocompletion for directory/file based properties in the POM xml editor</a></h1><p>Content assist is now available for directory/file based properties, in the POM xml editor:</p><p><img src="images/folder-content-assist.gif" alt="File/directory content-assist""/></p><p>It applies on:</p>
<ul>
<li>Certain pom model elements (build/{directory, sourceDirectory, scriptSourceDirectory, testSourceDirectory, outputDirectory, testOutputDirectory, filters/filter});</li>
<li>Plugin configuration elements which allow files (either File type or name ends with &lsquo;directory&rsquo;);</li>
<li>Modules.</li>
</ul><h1><a href="#support-for-smart-import-of-maven-projects" name="support-for-smart-import-of-maven-projects">Support for smart import of Maven projects</a></h1><p>m2e contributes to Eclipse Neon&rsquo; <a href="https://www.eclipse.org/neon/noteworthy/#_import_projects">smart import mechanism</a>, that lets you import a folder in the workspace, and automatic Maven configuration will be applied if the folder is identified as a Maven project (i.e contains a pom.xml).</p><h1><a href="#new-syntax-for-specifying-lifecycle-mapping-metadata" name="new-syntax-for-specifying-lifecycle-mapping-metadata">New syntax for specifying lifecycle mapping metadata</a></h1><p>A new syntax has been introduced to simplify lifecycle mapping metadata for plugin executions, using processing instructions within plugin/executions/execution nodes.</p><p><img src="images/pi-lifecyclemapping.gif" alt="processing instructions for lifecycle mapping""/></p><p>Supported syntax:</p>
<ul>
<li><code>&lt;?m2e ignore?&gt;</code> this execution will be ignored;</li>
<li><code>&lt;?m2e execute?&gt;</code> this execution will be executed once on project import;</li>
<li><code>&lt;?m2e execute onConfiguration?&gt;</code> this execution will be executed on every Project Configuration update;</li>
<li><code>&lt;?m2e execute onIncremental?&gt;</code> this execution will be executed on every incremental build;</li>
<li><code>&lt;?m2e execute onConfiguration,onIncremental?&gt;</code> this execution will be executed on every Project Configuration update and every incremental build;</li>
<li><code>&lt;?m2e configurator configuratorId?&gt;</code> this execution will be delegated to the matching m2e configurator.</li>
</ul><p>Each instruction can be placed in the <code>&lt;execution&gt;</code> node, this way it applies on this exact execution or on any execution of the same plugin with the same executionId in child pom. It can also be placed in a <code>&lt;plugin&gt;</code> node, this way it acts the same as a dedicated <code>&lt;pluginManagement&gt;</code> section which lists all goals of this plugin.</p><p>Please be aware there are currently no Quick Fixes available to automatically inject these new instructions when a &ldquo;Plugin Execution Not Covered&rdquo; error marker is found.</p><h1><a href="#support-for-plugin-embedded-archetype-catalogs" name="support-for-plugin-embedded-archetype-catalogs">Support for plugin embedded archetype catalogs</a></h1><p>m2e now correctly supports Maven archetype catalogs embedded in other Eclipse plugins. The following extension point can be used within a plugin.xml:</p>
<pre class="prettyprint linenums">
&lt;extension point=&quot;org.eclipse.m2e.core.archetypeCatalogs&quot;&gt;
&lt;local name=&quot;path/local/to/eclipse/bundle/archetype-catalog.xml&quot; description=&quot;My Embedded Catalog&quot;/&gt;
&lt;/extension&gt;
</pre><h1><a href="#new-api-for-overloading-maven-pom-properties" name="new-api-for-overloading-maven-pom-properties">New API for overloading Maven POM properties</a></h1><p>A new API is available for 3rd party plugins to override project properties through the <a href="http://git.eclipse.org/c/m2e/m2e-core.git/tree/org.eclipse.m2e.core/src/org/eclipse/m2e/core/project/ResolverConfiguration.java">org.eclipse.m2e.core.project.ResolverConfiguration</a>.</p><p>This new API is consumed by <a href="https://github.com/rawagner">Rastislav Wágner</a>&rsquo;s <a href="https://github.com/rawagner/m2e-properties">m2e-properties plugin</a> (<a href="https://www.youtube.com/watch?v=Njk-otnw9a0&feature=youtu.be">screencast</a>)</p><h1><a href="#conclusion" name="conclusion">Conclusion</a></h1><p>For this release, 14 <a href="https://git.eclipse.org/r/#/q/project:m2e/m2e-core+status:merged">Gerrit changesets</a> were merged, from 7 external contributors. So, special thanks to:</p>
<ul>
<li>Nick Boldt</li>
<li>Mickaël Istria</li>
<li>Gábor Lipták</li>
<li>Carsten Pfeiffer</li>
<li>Rastislav Wagner</li>
<li>Konrad Windszus</li>
</ul><p>Please, keep them contributions coming!</p><p>Now, if you still haven’t installed M2Eclipse 1.7.0 yet, head over to <a href="https://www.eclipse.org/m2e/download/">https://www.eclipse.org/m2e/download/</a> and knock yourselves out!</p><p>We’d love to hear your feedback on the <a href="https://dev.eclipse.org/mailman/listinfo/m2e-users">mailing list</a>, and please <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=m2e">report bugs or enhancement requests</a> if you find any problems.</p>
</div>
</div>
</div>
</div><!-- END wrap -->
<div class="stickyFooter">
<div class="footer">
<div class="container">
<div class="row">
<div class="col-md-4 md-margin-bottom-40"></div><!--/col-md-4-->
<div class="col-md-4 md-margin-bottom-40"> </div>
<div class="col-md-4">
</div>
</div>
</div>
</div>
<div class="copyright">
<div class="container">
<div class="row">
<div class="col-md-6">
<p class="copyright-space">
<a href="https://www.eclipse.org/">Home</a> | <a href="https://www.eclipse.org/legal/privacy.php">Privacy Policy</a> | <a href="https://www.eclipse.org/legal/termsofuse.php">Terms of Use</a> | <a href="https://www.eclipse.org/legal/copyright.php">Copyright Agent</a> | <a href="https://www.eclipse.org/legal/">Legal</a> | <a href="https://www.eclipse.org/org/foundation/contact.php">Contact Us</a>
</p>
</div>
<div class="col-md-6" align="right">
<p class="copyright-space">
Copyright &copy;
2016 The Eclipse Foundation. All Rights Reserved.
</p>
</div>
</div>
</div>
</div>
</div>
<!-- JS Global Compulsory -->
<script type="text/javascript" src="/m2e/assets/plugins/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="/m2e/assets/plugins/jquery-migrate-1.2.1.min.js"></script>
<script type="text/javascript" src="/m2e/assets/plugins/bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="/m2e/assets/plugins/hover-dropdown.min.js"></script>
<script type="text/javascript" src="/m2e/assets/plugins/back-to-top.js"></script>
<!-- TESTING JS -->
<script type="text/javascript" src="/m2e/assets/plugins/app.js"></script>
<script type="text/javascript">
jQuery(document).ready(function() {
App.init();
});
</script>
<!--[if lt IE 9]>
<script src="/m2e/assets/plugins/respond.js"></script>
<![endif]-->
</body>
</html>