Intellig IDEA x Grails - grails

I tested several IDEs for developing grails applications. Tested the Spring IDE, did not like because I thought slow and crashes every time.
Tested by netbeans, and the result was the same as before.
Was reading about IntelliJ IDEA. Current problem, even doing the command "grails integrate-with --intellij" mentioned on the website https://grails.org/IDEA+Integration not enabled the option of creating projects in grails .
After running the command above returns nothing.
What should I do?

you will need the ultimate edition of IntelliJ to get grails support
With ultimate you can simply open an existing grails project (see this answer) or create a project from the File/New Project... menu.

grails integrate-with --intellij creates three files in the directory (yourproject.(iml|ipr|iws)). You can open the .ipr file with IntelliJ and have the project loaded (it might ask to convert the file).
Also you can just create new project (pick Gradle and then Grails) or you can just use the directory as existing source where you create-app-ed your project and IntellIj will see, that it is Grails.
Be aware, that it will only work with the Ultimate Edition and not the Community Edition

Related

Grails 3.0.1 - Folders missing?

I downloaded Grails 2.4.4 and created a test project (using NetBeans) and it was successful.
I downloaded Grails 3.0.1 and created a test project (using NetBeans) NetBeans says project created successfully but it did not load the project in to project explorer.
I compared Groovy folders of 2.4.4 and 3.0.1 and noticed that few folders are missing in the installation.
I confirmed that I downloaded the correct package.
These are the folders/files missing in Grails 3.0.1
folders
conf,
doc,
plugins,
script
files
build.properties,
readme
Grails 3.0 was a complete re-write of Grails and lots of things have changed. Not the least of which is the folder and file structure. Since Grails 3.0 is based on Spring Boot and Gradle a lot of what was very Grails specific has been removed and replaced with both of these.
This blog entry gives a good amount of detail on what has changed in Grails 3.0. It even talks about directory/file structures.

Upgrade grails within ggts

Is there any way to upgrade project to newer version of Grails from within GGTS ?
Settings at
Window > Preferences > Groovy > Grails
changed settings only to newly created projects. Even if I set the newer version, if I run "grails upgrade" then it wants to upgrade to the older version.
I know, that I could do it from console, however messing with GRAILS_HOME on Windows is not the most pleasurable feeling in the world for me ...
I'm pretty sure that GGTS don't download Grails versions. For Unix based systems you have the great GVM tool, and you can use it on Windows with Cygwin.
If this is not an option to you, there's the Gravy, but be aware that:
Gravy has no intention of competing with GVM and its rich
functionality set. Instead, it only addresses the task of switching
locally present Grails versions within the active command shell.
So it means that you have to manually download the Grails versions, and the bat will handle the switch from one to another.

I can't create Grails project in Intellij 11

I can't find the way to create Grails project. When i choose New Project --> Create project from scratch, I don't see anywhere to choose Grails project, how can i configure this issue? And how can i run Grails app?
Just use: File => New Project => Create project from scratch
In the modal form after that is shown after, you can select 'Grails' as the project type.
If you don't see this option, that is because you have installed the Community Edition of IntelliJ, which has no Grails support. You need the Ultimate Edition for that. Trust me, it's worth it.
Look here for a comparison sheet
Create the Grails app on the command-line using:
grails create-app myapp
In IntelliJ, create a new project, or open an existing project. Then in the File menu, choose New Module and choose the option "Import Grails application from existing sources"
http://grails.org/doc/latest/guide/gettingStarted.html#requirements
You can still use Community Edition for Grails development, but you will miss out on
all the Grails specific features like automatic
classpath management, GSP editor and quick access to Grails commands.
To integrate Grails with Community Edition run the following command
to generate appropriate project files:
grails integrate-with --intellij

In intellij, does a project constitute a single classpath?

I have two grails projects (on different versions of grails), but they work together to provide a seemless user experience. Can IntelliJ have a single project which has both grails projects?
Some terminology clarifications:
What you're calling a project, IntelliJ calls a module. An IntelliJ module typically generates a single artifact (.war, .jar, etc). The Eclipse equivalent of an IntelliJ module is a project.
An IntelliJ project is a grouping of related modules. The Eclipse equivalent of an IntelliJ project is a workspace
So what you probably want to do is create a IntelliJ project, which contains two modules (one for each Grails app). IntelliJ will allow you to add two Grails modules that use different versions of Grails to the same project. Each IntelliJ module has its classpath.
Yes, sure. You can add it as a new module to current project/workspace: File -> New Module

Effective grails plugin development

This has been very upsetting for me up till now. Here is what I am trying to do:
IDE I'm using is Intellij IDEA.
Building a grails application.
Grails application specifies two dependencies on in house grails plugins also being developed in IntelliJ as separate grails plugin projects.
Now to make any changes to plugins, I update the source code in plugin projects and use mavan-install (Maven Publisher plugin) to deploy to local Maven repository.
I have to uninstall the plugin in core grails project. Delete the plugin cache from ivy and then run the core grails project which gets the latest copy of plugin from local maven repository.
What's the effective and ideal way to achieve this? A single change makes me do some 5 minutes of labour work to even test and run core application.
Any recommendations/ best practices?
Use inline plugins for this - see section "Specifying Plugin Locations" in http://grails.org/doc/latest/guide/12.%20Plug-ins.html#12.1%20Creating%20and%20Installing%20Plug-ins
By specifying the plugin project directory with grails.plugin.location.<plugin-name> as the location of the installed plugin, you can edit the real files and the changes will affect the test application, and there's no need to sync anything up.

Resources