Skip to content
Skip to breadcrumbs
Skip to header menu
Skip to action menu
Skip to quick search
Quick Search
Browse
Pages
Blog
Labels
Attachments
Mail
Advanced
What’s New
Space Directory
Feed Builder
Keyboard Shortcuts
Confluence Gadgets
Log In
Sign Up
Dashboard
Groovy
Copy Page
You are not logged in. Any changes you make will be marked as
anonymous
. You may want to
Log In
if you already have an account. You can also
Sign Up
for a new account.
This page is being edited by
.
Paragraph
Paragraph
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Preformatted
Quote
Bold
Italic
Underline
More colours
Strikethrough
Subscript
Superscript
Monospace
Clear Formatting
Bullet list
Numbered list
Outdent
Indent
Align left
Align center
Align right
Link
Table
Insert
Insert Content
Image
Link
Attachment
Symbol
Emoticon
Wiki Markup
Horizontal rule
tinymce.confluence.insert_menu.macro_desc
Info
JIRA Issue
Status
Gallery
Tasklist
Table of Contents
Other Macros
Page Layout
No Layout
Two column (simple)
Two column (simple, left sidebar)
Two column (simple, right sidebar)
Three column (simple)
Two column
Two column (left sidebar)
Two column (right sidebar)
Three column
Three column (left and right sidebars)
Undo
Redo
Find/Replace
Keyboard Shortcuts Help
<p>Riding high on the back of the Groovy 1.7 release, the Groovy-Eclipse is pleased to announce its own 2.0.0RC1 release. Over <a class="confluence-link" href="#issuesfixed" title="Issues fixed for RC1" data-anchor="issuesfixed" data-linked-resource-default-alias="issuesfixed" data-base-url="http://docs.codehaus.org">50 issues</a> have been addressed for this release and we consider this release high quality enough to be considered for release in early January, unless blocking bugs are found.</p> <p>In this release, we have focused on polishing and refining existing features, but there are some new features introduced as well.</p> <p>For information about previous Groovy-Eclipse releases, see <a class="confluence-link" href="/display/GROOVY/Groovy-Eclipse+2.0.0M1+New+and+Noteworthy" data-linked-resource-id="133464433" data-linked-resource-type="page" data-linked-resource-default-alias="Groovy-Eclipse 2.0.0M1 New and Noteworthy" data-base-url="http://docs.codehaus.org">Groovy-Eclipse 2.0.0M1 New and Noteworthy</a> and <a class="confluence-link" href="/display/GROOVY/Groovy-Eclipse+2.0.0M2+New+and+Noteworthy" data-linked-resource-id="135397780" data-linked-resource-type="page" data-linked-resource-default-alias="Groovy-Eclipse 2.0.0M2 New and Noteworthy" data-base-url="http://docs.codehaus.org">Groovy-Eclipse 2.0.0M2 New and Noteworthy</a>.</p> <table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="title=Groovy-Eclipse RC1 update site" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86dGl0bGU9R3Jvb3Z5LUVjbGlwc2UgUkMxIHVwZGF0ZSBzaXRlfQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"> <p>To install RC1, add the following URL to your Eclipse update manager:<br /> <code><a class="external-link" href="http://dist.springsource.org/milestone/GRECLIPSE/e3.5/" rel="nofollow">http://dist.springsource.org/milestone/GRECLIPSE/e3.5/</a></code></p></td></tr></table> <img class="editor-inline-macro" src="/plugins/servlet/confluence/placeholder/macro?definition=e3RvYzptYXhMZXZlbD0yfGluZGVudD0yMHB4fHN0eWxlPWRpc2N9&locale=en_GB&version=2" data-macro-name="toc" data-macro-parameters="indent=20px|maxLevel=2|style=disc"> <h2>Better @Grab support</h2> <p>Until recently the use of @Grab to pull in source file dependencies was not recognized by groovy eclipse, resulting in a compilation error for the type that would have been located by following the Grab. Now they are being recognized. The @Grab referenced dependencies are added to the classpath used under the covers to build the project. Content assist is also possible for references to @Grab'd types. Grabbed dependencies are not currently reflected anywhere in the eclipse project metadata (ie. they are not seen in the classpath Eclipse manages for the project) - this may change in a future version of Groovy Eclipse.</p> <p>When using @Grab, the Grab'd types are available through content assist and unknown references are underlined. In the following screenshot, you can see that the Joda-Time API can be verified and used within the editor even though its jars are only available through @Grab:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/grab_content_assist.gif?version=1&modificationDate=1371719001067" data-image-src="/download/attachments/231082397/grab_content_assist.gif?version=1&modificationDate=1371719001067" data-linked-resource-id="231377341" data-linked-resource-type="attachment" data-linked-resource-default-alias="grab_content_assist.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > grab_content_assist.gif"></p> <h2>Launching Groovy scripts</h2> <p>Launching groovy scripts is now easier and more robust. We have addressed some key bugs in this area: <a href="http://jira.codehaus.org/browse/GRECLIPSE-555">GRECLIPSE-555</a>, <a href="http://jira.codehaus.org/browse/GRECLIPSE-560">GRECLIPSE-560</a>, <a href="http://jira.codehaus.org/browse/GRECLIPSE-478">GRECLIPSE-478</a>.</p> <p>There is also an option to set the default working directory for the script launcher:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/groovy_prefs_launch.gif?version=1&modificationDate=1371719001206" data-image-src="/download/attachments/231082397/groovy_prefs_launch.gif?version=1&modificationDate=1371719001206" data-linked-resource-id="231377353" data-linked-resource-type="attachment" data-linked-resource-default-alias="groovy_prefs_launch.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > groovy_prefs_launch.gif"></p> <p>On the Groovy Preferences page, you can toggle between the project root, the workspace root, and the script location.</p> <p>Additionally, the Run as Groovy Application launch configuration has been removed since it is a complete duplicate of the Java launch configuration. All compiled groovy scripts can be launched as a Java application through its generated main method.</p> <h2>Inferencing improvements</h2> <p>We are continuing to refine the <a href="http://contraptionsforprogramming.blogspot.com/2009/11/how-type-inferencing-for-groovy-in.html">inferencing engine</a>. Some of the notable improvements is support for navigation on the super, and this keywords. Also, content assist will show all the proper method and property completions when the class literal is accessed, e.g.:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/class_content_assist.gif?version=1&modificationDate=1371719001195" data-image-src="/download/attachments/231082397/class_content_assist.gif?version=1&modificationDate=1371719001195" data-linked-resource-id="231377352" data-linked-resource-type="attachment" data-linked-resource-default-alias="class_content_assist.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > class_content_assist.gif"></p> <p>And hovers now work correctly for references on super classes, methods, and fields:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/super_class_hover.gif?version=1&modificationDate=1371719001187" data-image-src="/download/attachments/231082397/super_class_hover.gif?version=1&modificationDate=1371719001187" data-linked-resource-id="231377351" data-linked-resource-type="attachment" data-linked-resource-default-alias="super_class_hover.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > super_class_hover.gif"></p> <h2>Better AST transform support</h2> <p>The AST transform support has been further refined. Eclipse does not allow individual source folders to be tagged as either 'source' or 'test' and then have them compiled separately. Due to this restriction it is hard to support the definition of an AST transform in the same project in which it is consumed. However, Groovy eclipse will allow this to occur <strong>if</strong> the transform is implemented in pure java (in a .java file) and that transform has no dependencies on uncompiled groovy code (ie. code in .groovy source files in the same project).</p> <p>Also, groovy eclipse now allows AST transforms to be defined in projects upon which you depend. Previously it only supported consuming them from .jar files on the project classpath.</p> <h2>Jars from .groovy/lib directory added to classpath</h2> <p>All jars in your <em><user.home>/.groovy/lib</em> directory are added to your classpath as part of the Groovy support classpath container. After a change to the groovy lib directory, you can refresh the workspace's Groovy support classpath container by going to the Groovy Preferences page:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/groovy_prefs_classpath.gif?version=1&modificationDate=1371719001181" data-image-src="/download/attachments/231082397/groovy_prefs_classpath.gif?version=1&modificationDate=1371719001181" data-linked-resource-id="231377350" data-linked-resource-type="attachment" data-linked-resource-default-alias="groovy_prefs_classpath.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > groovy_prefs_classpath.gif"></p> <h2>Groovy-aware file copy/rename</h2> <p>Groovy-aware file copy, rename, and paste are working. In the package explorer, you can select a groovy compilation unit and type CTRL-c and CTRL-v (or CMD-c and CMD-v on Mac). The compilation unit will be appropriately copied.</p> <p>Furthermore, you can rename a class inside of a Groovy compilation unit. To start the refactoring, select a class reference or declaration and select <em>Rename...</em> from the Groovy refactoring menu:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/rename_menu.gif?version=1&modificationDate=1371719001171" data-image-src="/download/attachments/231082397/rename_menu.gif?version=1&modificationDate=1371719001171" data-linked-resource-id="231377349" data-linked-resource-type="attachment" data-linked-resource-default-alias="rename_menu.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > rename_menu.gif"></p> <p>Then the following choice appears:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/rename_select.gif?version=1&modificationDate=1371719001149" data-image-src="/download/attachments/231082397/rename_select.gif?version=1&modificationDate=1371719001149" data-linked-resource-id="231377347" data-linked-resource-type="attachment" data-linked-resource-default-alias="rename_select.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > rename_select.gif"></p> <p>Choose the <em>Groovy</em> refactoring to rename only the class and it references, but not the file itself. Choose the <em>Java</em> refactoring to rename the file as well as the class. You can then see the standard renaming options from the rename dialog:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/rename_dialog.gif?version=1&modificationDate=1371719001159" data-image-src="/download/attachments/231082397/rename_dialog.gif?version=1&modificationDate=1371719001159" data-linked-resource-id="231377348" data-linked-resource-type="attachment" data-linked-resource-default-alias="rename_dialog.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > rename_dialog.gif"></p> <p>After typing the new name and clicking finished, the Groovy class, its file (only if <em>Java</em> refactoring is selected), and all references (both Groovy and Java) are properly renamed:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/rename_results.gif?version=1&modificationDate=1371719001137" data-image-src="/download/attachments/231082397/rename_results.gif?version=1&modificationDate=1371719001137" data-linked-resource-id="231377346" data-linked-resource-type="attachment" data-linked-resource-default-alias="rename_results.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > rename_results.gif"></p> <h2>Navigate to super class</h2> <p>Clicking on an override indicator in the gutter will navigate the caret to the super class's implementation of a method:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/override_indicator.gif?version=1&modificationDate=1371719001131" data-image-src="/download/attachments/231082397/override_indicator.gif?version=1&modificationDate=1371719001131" data-linked-resource-id="231377345" data-linked-resource-type="attachment" data-linked-resource-default-alias="override_indicator.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > override_indicator.gif"></p> <h2>JavaDoc viewing</h2> <p>Hovering on a Groovy method field or class will bring up the JavaDoc/GroovyDoc comment for that declaration. For more information, see the <a href="http://andrewclement.blogspot.com/2009/12/groovy-eclipse-and-javadoc-hovers.html">Groovy eclipse and javadoc hovers</a> blog post.</p> <h2>Generated getter/setter navigation and JavaDocs</h2> <p>Hovering over a getter or setter generated by a property node will show the JavaDoc/GroovyDoc of the originating field:</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/getter_hover.gif?version=1&modificationDate=1371719001118" data-image-src="/download/attachments/231082397/getter_hover.gif?version=1&modificationDate=1371719001118" data-linked-resource-id="231377343" data-linked-resource-type="attachment" data-linked-resource-default-alias="getter_hover.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > getter_hover.gif"></p> <p>And pressing F3 or CTRL-Click when the generated getter or setter is selected will navigate the cursor to the property node's definition (i.e., the field).</p> <h2>Basic content assist options</h2> <p>There are now some basic options to control how content assist proposals are entered into the Groovy editor. You can control whether or not parentheses are used for entering method proposals. And you can also control whether closures arguments are entered with an empty closure <em>{ }</em> or as a regular parameter.</p> <p><img class="confluence-embedded-image confluence-content-image-border image-center" src="/download/attachments/231082397/groovy_prefs_contentassist.gif?version=1&modificationDate=1371719001125" data-image-src="/download/attachments/231082397/groovy_prefs_contentassist.gif?version=1&modificationDate=1371719001125" data-linked-resource-id="231377344" data-linked-resource-type="attachment" data-linked-resource-default-alias="groovy_prefs_contentassist.gif" data-base-url="http://docs.codehaus.org" data-linked-resource-container-id="231082397" title="null > groovy_prefs_contentassist.gif"></p> <p><img class="editor-inline-macro" src="/plugins/servlet/confluence/placeholder/macro?definition=e2FuY2hvcjppc3N1ZXNmaXhlZH0&locale=en_GB&version=2" data-macro-name="anchor" data-macro-default-parameter="issuesfixed"></p> <h2>Issues fixed</h2> <p><img class="editor-inline-macro" src="/plugins/servlet/confluence/placeholder/macro?definition=e2ppcmFpc3N1ZXM6dGl0bGU9SXNzdWVzIGFkZHJlc3NlZCBmb3IgUkMxfHVybD1odHRwOi8vamlyYS5jb2RlaGF1cy5vcmcvc3IvamlyYS5pc3N1ZXZpZXdzOnNlYXJjaHJlcXVlc3QteG1sLzEzNTUyL1NlYXJjaFJlcXVlc3QtMTM1NTIueG1sP3RlbXBNYXg9MTAwMH0&locale=en_GB&version=2" data-macro-name="jiraissues" data-macro-parameters="title=Issues addressed for RC1|url=http://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/13552/SearchRequest-13552.xml?tempMax\=1000">If the above doesn't show for you, go directly to the <a href="http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+GRECLIPSE+AND+fixVersion+%3D+%222.0.0RC1%22+AND+status+in+%28Resolved%2C+Closed%29">jira issue tracker</a></p> <h2>Thanks</h2> <p>Thank you to the community for diligently trying out new releases, raising bugs, suggesting fixes, and discussing features. If you want to participate in the discussion, join the <a href="http://xircles.codehaus.org/manage_email/eclipse-plugin-user@groovy.codehaus.org">mailing list</a> and raise bugs in our <a href="http://jira.codehaus.org/browse/GRECLIPSE">issue tracker</a>.</p>
Please type the word appearing in the picture.
Attachments
Labels
Location
Watch this page
< Edit
Preview >
Loading…
Save
Cancel
Next hint
search
attachments
weblink
advanced