Another CON to the global library approach, I'm afraid.

When using a global Groovy SDK I can no longer hit break points in groovy
script files when debugging.
If I remove the global library, even while ofbiz is running, I can hit
break points again.

Thanks,

Dan.

On Thu, 21 Jan 2021 at 12:44, Daniel Watford <d...@foomoo.co.uk> wrote:

> Hi Pawan,
>
> I had to carry out one more step to get your solution to work for me.
>
> I'm running IntelliJ Ultimate 2020.3.1.
>
> I find that I get asked to configure a Groovy SDK for the first
> groovyScript file that I open in the IDE for any particular module.
>
> I tried two Groovy SDKs, 'Gradle: org.codehaus.groovy:groovy:2.5.11' and
> 'groovy-3.0.7' that I already had installed locally.
>
> Choosing the SDKs didn't allow me to navigate to java source files.
>
> However in the case of the non-gradle provided Groovy SDK (3.07) I could
> add additional sources to the library. Adding the ofbiz-framework project
> directory as a location of the groovy-3.0.7 library's sources meant I could
> navigate to java classes and methods from groovy scripts.
>
> I've since downloaded and installed groovy-2.5.11 and created a global SDK
> for it along with ofbiz-framework sources, however I still have to
> configure each module for use with the library manually.
>
> Further, re-importing the gradle build resets the libraries configured for
> the project, meaning I have manually reconfigure the Groovy SDK for use
> with a groovyScript the first time I open that module.
>
> I tried to come up with some pros and cons for the global library approach
> when working in IntelliJ.
>
> PRO:
> - No modification to the gradle build configuration for the purpose of IDE
> support.
> - No complications with ensuring the groovyScripts build step is skipped.
>
> CON:
> - Developer needs to manually install groovy, rather than use the version
> automatically included with ofbiz-framework as a dependency.
> - Developer needs to configure the library with ofbiz-framework source
> directories, and ensure the list of directories is refreshed from time to
> time.
> - Developer should keep installed groovy version in sync with version used
> by ofbiz-framework.
> - Developer needs to manually select the groovy SDK to use with a
> groovyScript, and reselect the SDK following any import of the gradle build
> by the IDE.
>
> If possible, I'd rather describe the gradle build in such a way as the IDE
> can configure itself with all dependencies it needs rather than have the
> developer manually apply (and repeatedly re-apply) configuration.
>
> Pawan, if you are not experiencing the CONs I've listed, please let me
> know as there may be some configuration item in IntelliJ I've missed
> somewhere.
>
> Thanks,
>
> Dan.
>
>
> On Thu, 21 Jan 2021 at 11:08, Pawan Verma <pawan.ve...@hotwaxsystems.com>
> wrote:
>
>> Hi Dan,
>>
>> I use IntelliJ 2019.1 Ultimate Edition(I know it's too old) and have a
>> Groovy SDK setup(groovy-2.5.7). For me it works well, I am also able to
>> navigate between other OFBiz Classes from GroovyScript files.
>>
>> I've tried removing the Groovy SDK and set it up as a fresh one and
>> recorded a short video for your reference. Please have a look and let me
>> know if it works for you.
>>
>> Video Link:
>>
>> https://drive.google.com/file/d/1mhR28dn_buIaiB0vDs7a714PV05H_Bin/view?usp=sharing
>> --
>> Thanks & Regards
>> Pawan Verma
>> Technical Consultant
>> *HotWax Systems*
>> *Enterprise open source experts*
>> http://www.hotwaxsystems.com
>>
>>
>> On Wed, Jan 20, 2021 at 9:23 PM Daniel Watford <d...@foomoo.co.uk> wrote:
>>
>> > Hello,
>> >
>> > I spent some more time trying to see if I could get IntelliJ to handle
>> > groovyScript files without making changes to build.gradle, but cannot
>> find
>> > any other workarounds.
>> >
>> > Although we don't generally want to put lots of IDE specific code into
>> our
>> > sources, we do seem to do this occasionally since we include
>> > OfbizDslDescriptorForIntelliJ.gdsl and
>> OfbizDslDescriptorForEclipse.dsld to
>> > improve the developer experience.
>> >
>> > Further, the change I'm proposing isn't really IntelliJ specific, it is
>> > just the only way I can get IntelliJ to recognise groovyScript files.
>> >
>> > Therefore if there are no objections to this change, and if no issues
>> are
>> > reported by other IDE users, I'll merge it in a few days.
>> >
>> > Thanks,
>> >
>> > Dan.
>> >
>> > On Wed, 20 Jan 2021 at 10:31, Jacques Le Roux <
>> > jacques.le.r...@les7arts.com>
>> > wrote:
>> >
>> > > Hi Daniel, All,
>> > >
>> > > I use only Eclipse (for 15+ years and 2020-12 currently) with[1]+[2]
>> and
>> > I
>> > > have no problems with classpath nor navigation to Java classes from
>> > Groovy
>> > > scripts
>> > >
>> > > [1] Buildship: Eclipse Plug-ins for Gradle, provided as part of the
>> > Gradle
>> > > Platform.
>> > > [2] Eclipse Groovy Development Tools. Provides the main plug-ins to
>> > create
>> > > and work with Groovy artifacts. It provides a powerful editor, code
>> > > completion, syntax-highlighting, JUnit support, wizards and a seamless
>> > > integration into the Java development functionality.
>> > >
>> > > FWIW, HTH
>> > >
>> > > Jacques
>> > >
>> > > Le 18/01/2021 à 09:54, Girish Vasmatkar a écrit :
>> > > > Hi Daniel
>> > > >
>> > > > I am on Eclipse most of the time and use the gradle eclipse plug-in
>> to
>> > > just
>> > > > build the classpath. I have not faced this issue on Eclipse so can't
>> > > speak
>> > > > to that.
>> > > >
>> > > > That said, I see no issues with selecting SDK or compiler for the
>> > Groovy
>> > > > files. I do it on eclipse and it works without generating dupes. I
>> > launch
>> > > > OFBiz from within IDE and can navigate to other OFBiz classes as
>> well.
>> > > >
>> > > > I'll also give it a try on IntelliJ and let you know how it goes.
>> > > >
>> > > > Best,
>> > > > Girish
>> > > >
>> > > >
>> > > >
>> > > >
>> > > > On Mon, Jan 18, 2021 at 1:32 PM Pritam Kute <
>> > > pritam.k...@hotwaxsystems.com>
>> > > > wrote:
>> > > >
>> > > >> Hello Emad,
>> > > >>
>> > > >> I have tried those changes and can confirm that those are working
>> as
>> > > >> expected. Thanks!
>> > > >>
>> > > >> Kind Regards,
>> > > >> --
>> > > >> Pritam Kute
>> > > >>
>> > > >>
>> > > >> On Sun, Jan 17, 2021 at 9:01 PM Daniel Watford <d...@foomoo.co.uk>
>> > > wrote:
>> > > >>
>> > > >>> Hello,
>> > > >>>
>> > > >>> I use IntelliJ for ofbiz development, but have found it awkward to
>> > work
>> > > >>> with groovyScript files.
>> > > >>>
>> > > >>> Each time I would view a groovyScript file IntelliJ would display
>> a
>> > > >> warning
>> > > >>> that the file was not associated with a Groovy SDK and prompt me
>> to
>> > > >> select
>> > > >>> one. Further, I couldn't navigate from a groovyScript file to
>> other
>> > > ofbiz
>> > > >>> classes.
>> > > >>>
>> > > >>> IntelliJ imports the project script from the build.gradle file, so
>> > any
>> > > >>> changes I might have manually made to ease IDE development of
>> > > >> groovyScript
>> > > >>> files were lost as soon as I reimported build.gradle.
>> > > >>>
>> > > >>> To address this I needed to add the groovyScript files to the
>> gradle
>> > > >> build
>> > > >>> in some way, while at the same time preventing the files from
>> being
>> > > built
>> > > >>> and turned into classes.
>> > > >>>
>> > > >>> Some minor changes to the build.gradle file have been added to a
>> > branch
>> > > >>> here -
>> > > >>>
>> > https://github.com/danwatford/ofbiz-framework/tree/groovyScript-gradle
>> > > >>>
>> > > >>> I have tested these build.gradle changes in IntelliJ and can now
>> > > navigate
>> > > >>> from groovyScript to ofbiz classes.
>> > > >>>
>> > > >>> Please could other IDE users (eclipse, netbeans, etc0 try out the
>> > > changes
>> > > >>> in the branch to see if the developer experience is improved when
>> > > >> importing
>> > > >>> the ofbiz project structure from the gradle build file.
>> > > >>>
>> > > >>> Thanks,
>> > > >>>
>> > > >>> Dan.
>> > > >>>
>> > > >>> --
>> > > >>> Daniel Watford
>> > > >>>
>> > >
>> >
>> >
>> > --
>> > Daniel Watford
>> >
>>
>
>
> --
> Daniel Watford
>


-- 
Daniel Watford

Reply via email to