Access to add and change pages is restricted. See: https://cwiki.apache.org/confluence/display/OFBIZ/Wiki+access

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 56 Next »

Pre Gradle version

This page documents the usage with Gradle, the pre-Gradle documentation is here: Eclipse Tips (pre Gradle version)

Be sure Eclipse is ready

Before any interaction with OFBiz in Eclipse be sure to run "gradlew eclipse". This generate the information Eclipse needs about the OFBiz project.

 

Children pages


Table of contents

Most important shortcuts

  • CTRL+SHIFT+R for finding resources!
  • CTRL+H for finding text in files
  • The rest you will find on Internet (smile)

Note: though it's now more history, for me at least, here is what I got through initially when working with Gradle in Eclipse Unable to render Jira issues macro, execution error.

Setting up Eclipse to work with OFBiz is easy.

There are two ways to import OFBiz into Eclipse:

  1. You can either allow Eclipse to download OFBiz directly from SVN,
  2. or you can import an already downloaded copy of OFBiz (from SVN or otherwise) from the filesystem.
  3. OFBiz has been split between framework and plugins. It's though still possible for Eclipse to handle the plugins inside the framework by embedding the ofbiz-plugins project inside the ofbiz (ofbiz-framework) project. That's interesting notably if you use Subclipse.

    1) Run "gradlew pullAllPluginsSource"  from ofbiz-framework project root.
    2) Import the just checked out ofbiz-plugins project in Eclipse.
    3) Follow https://stackoverflow.com/questions/9163501/eclipse-import-folder-of-source-code-to-other-projects.
    4) You can then close ofbiz-plugins project, you should be able to now use the sole project ofbiz to handle both framework and plugins.

    I have though found it can be erratic, but most of the time it works. There is only 1 drawback. If you run gradlew eclipse your ofbiz project will lose the relation with its ofbiz-plugins sub project because this Gradle task delete and create a new .classpath files which destroy the relation created when following the stackoverflow answer. Then you need to make the steps above again. It's maybe the reason why it can be erratic. We can maybe automate that with Gradle but I'm not sure how.

Importing OFBiz from the filesystem into Eclipse

If you have already downloaded OFBiz and do not wish to have Eclipse handle SVN pulls for you, Eclipse can import OFBiz from the filesystem as well.

First you need to generate the ".project" file to allow Eclipse to automatically configure the project for you. For that simply run "gradlew eclipse" on the command line.

Then all you have to do to import the project is:

  1. Right-click in the Navigator window and click on Import.
  2. Select "Existing Project into Workspace" and click Next.
  3. Click Browse and select the directory that contains the ".project" file, then click Finish. When this is complete, a new project named "ofbiz" will now appear in your Navigator. This will not copy the project to Eclipse's workspace directory: it will remain wherever it was before the import. If you want the OFBiz files in your workspace directory, you must move them there before you do the import.

 


Using SVN from within Eclipse

If you want to do the SVN pull from within Eclipse, use the following steps:

  1. First you need to install Subclipse
  2. Bring up the "SVN Repository" panel in Eclipse (Window/Open Perspective/SVN Repository Exploring)
  3. Right-Click within panel/New/Repository Location
    Pick the URL of the one you are interested in at http://svn.apache.org/repos/asf/ofbiz/
     eg: http://svn.apache.org/repos/asf/ofbiz/ofbiz-framework/trunk/
  4. Click on Finish. Now, do the initial checkout.
  5. Click the "+" next to the new repository
  6.  then Right-Click on trunk and select "Checkout...".
  7. Select "Check out as project in the workspace" and click on "Finish".
  8. This will create a new project that you can name as you want and download the OFBiz files directly from SVN. To sync your project with SVN in the future, right-click on the project and click Teams/Synchronize with Repository.

Using GIT from within Eclipse

You will need "Git Team Provider" package (integral part of many Eclipse IDE builds) for this to work. If not installed please check "EGit - Git integration for Eclipse".

  1. From the Eclipse main menu, choose: Window -> Perspective -> Open Perspective -> Other -> Git.
  2. In the "Git Repositories" window click the "Clone a Git repository" link or the "Clone a Git Repository and add the clone to this view" button from the view's toolbar to start git clone wizard.
    1. On the first page of the wizard, enter the location of the trunk remote repository, among
      https://github.com/apache/ofbiz/ (freezed just before the framework and plugins split, 12 Feb 2017)
      https://github.com/apache/ofbiz-framework
      https://github.com/apache/ofbiz-plugins
      and click the "Next" button.
      There is no Git repo for the branches which support the released packages, but there are SVN repos at
      http://svn.apache.org/repos/asf/ofbiz/branches
  3. On the next "Branche Selection" page, choose which branches shall be cloned from the remote repository (by default all selected). 
    Example: Click the "Deselect all" button, choose "release16.11" branch and click the "Next" button.
  4. On the "Local Destination" page, choose the directory where you want to store the repository on the local file system and click the "Finish" button.
    If you want the OFBiz files in your Eclipse workspace directory, choose: Browse -> [/location/of/the/eclipse/workspace/directory]. 
    Upon successful completion of the clone operation, the newly cloned repository appears automatically in the list of the Git Repositories perspective.
  5. Open the terminal view from within Eclipse: Window -> Show View -> Other -> Terminal -> Terminal.
  6. In the "Terminal" window, click the "Open a Terminal" button from the view's toolbar (confirm with "Ok" in the "Launch Terminal" window) to start the terminal.
  7. In the terminal, open the directory where you stored the repository (i.e. /location/of/the/eclipse/workspace/directory/ofbiz) and run ./gradlew eclipse (Linux) or gradlew eclipse (Windows).
  8. In the Git Repositories window, expand the ofbiz repository tree, choose: Working Tree -> right click -> Import Projects -> Finish.

After the import is finished your project is ready to be built, developed and debugged

For more information about how to manage the repository please see EGit/User Guide - Managing Repositories.


 

Hide folders from searches

Most of the time you don't want to look into some folders because there is nothing interesting there and they sometimes annoy you because of search errors (sad)

Then you tool of choice is https://nodj.github.io/AutoDeriv/

For your convenience here is the content of the .derived file I set at the root of my workspace folder, YMMV...

# sets these folders as derived
*.gradle
.settings
bin
build
gradle
lib
runtime/indexes
runtime/catalina
runtime/data
runtime/logs/birt
runtime/output
runtime/tempfiles
runtime/tmp
runtime/uploads

Using local XSD's when no internet connection is available, or you are using another version than the one online

Eclipse uses XSD files to check XML files for correctness and also when using autocompletion. Normally, eclipse uses the XSD location specified at the top of the XML file which is usually a remote address. If you do not have an internet connection, the XSD will not be found and these features will not be available (unless they have been previously cached by eclipse).

A new file .catalog.xml has been introduced in OFBiz root starting from svn 1326499. This file contains a definition compliant with the Oasis Catalog specification of all schemas used by ofbiz. You can import it in you Eclipse workbench by following the explanation at the Eclipse Import XML catalog section (hint: use the Eclipse Import/XML feature). Note also that the platform:/resource notation is used to identify a resource located in the workspace. The next path segment after "resource" should be the name of a project, which can be followed by the folder and/or file we want to locate. So you might need to change the workspase name part of the path according to your real project name.

Here is an example

 

Eclipse and Gradle

A gradle plug-in exist for eclipse and it is  in the default configuration for the last version of eclipse.

With this plug-in and declare ofbiz as a gradle project, it's possible to view the task list and running them directly by a click, but currently it's not easy to give some parameters values. So it's useful for the basic tasks but not for a full usage of gradle. If you only have a graphical view for the task list, it's more simple to just do (out of eclipse ;-) ./gradlew --gui

After this warning, if you continue to realy want to have ofbiz declare as a Gradle project, you should do 2 steps :

  1. STEP-1 : If you have'nt generate eclipse file (./gradlew eclipse), my advice is to modifying build.gradle before using
    add these lines :
    eclipse {
            project {
              //Eclipse project's comment which appair in Gradle tasks view behind ofbiz
              comment = 'All the main gradle task'
              //Append gradle natures :
              natures 'org.eclipse.buildship.core.gradleprojectnature'
              //Append the gradle build command:
              buildCommand 'org.eclipse.buildship.core.
    
    gradleprojectbuilder'
    
     
  2. STEP-1b : If you have already generate the eclipse file, the .project file should be modified
    You should add two thing :

    1. in <natures> add
              <nature>org.eclipse.buildship.core.gradleprojectnature</nature>
    2. in <buildSpec>
              <buildCommand>
                  <name>org.eclipse.buildship.core.gradleprojectbuilder</name>
                  <arguments/>
              </buildCommand>
  3. STEP-2 : (after the eclipse files generation) you should add a file name org.eclipse.buildship.core.prefs in .settings directory (created by gradle eclipse task)
    the contents of the file should be :

                 build.commands=org.eclipse.jdt.core.javabuilder
                 connection.arguments=
                 connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER)
                 connection.java.home=null
                 connection.jvm.arguments=
                 connection.project.dir=
                 derived.resources=.gradle,build
                 eclipse.preferences.version=1
                 natures=org.eclipse.jdt.core.javanature
                 project.path=\:

     

  4. You can start eclipse and wait init. You can go to the gradle task view

  5. last warning : do nut use, the eclipse option "convert to gradle project" because it generate a lot of subproject and an error in build path for ofbiz project.

     

  • No labels