InViVe
InViVe

Reputation: 1

Referencing a GWT project from another GWT one - Problems

I am already using an open source GWT project (iServe) and I would like to integrate into it another open source GWT project (PetalsBPM), by which I mean being able to call it and reference its methods.

I have imported iServe in Eclipse (it has multiple modules) as separate Maven projects referencing its other and can run it successfully through Runas -> Web application in development mode.

If I do that and run the other project through the console as mvn gwt:run, I call initiate PetalsMBP through iServe. However, that means that the two programs have to run as is, without communication with each other.

I have also imported the second project into eclipse as a java project successfully (converting into a Maven one causes problems - various lifecycle configurations ones), but whenever I try to add to to iServe through Properties -> Java Build Path -> Projects, although it does not cause any errors immediately, I cannot launch iServe anymore. It produces the following error:

"Exception occurred executing command line. Cannot run program "C:\Program Files\Java\jre7\bin\javaw.exe" (in directory "C:...iserve-sal-gwt-1.0.0-SNAPSHOT"): CreateProcess error=206, The filename or extension is too long"

Are my problems related to the fact that PetalsBPM is not a Maven project in Eclipse (I doubt it)? Am I doing something wrong, i.e., this is not the way to reference a project from another one? should I add a reference to the first project's (iServe) gwt.xml file? Is there a way to do what I want without having to wrap the second project as a jar and calling it from iServe? I would prefer not to, since producing a jar every time I make a slight change is not exactly efficient!

P.S: The second project is a regular GWT project with an entrypoint, not just a module. Should I remove this?


UPDATE: Trying to figure out the source of this error, I attempted to simplify the problem, so I performed the following moves:

  1. I created two new simple GWT projects and tried to reference one from the other. Worked fine
  2. I referenced the project I actually want to use (PetalsBPM) from the simple one I just created. Also works fine.
  3. I referenced the new simple project from the original one I want to use (iServe). Also works fine.
  4. Tried doing what I actually want to do, copying the settings from 2&3. Produces the same error "CreateProcess error=206, The filename or extension is too long" if I reference PetalsBPM (does not when I remove it from the referenced projects)

So, I tried switching workspaces. I created a new workspace in C:\, and moved the actual projects there. Still it did not work. :(

Any more ideas?

Upvotes: 0

Views: 1987

Answers (3)

elkaonline
elkaonline

Reputation: 187

I met the same type of error "Create Process, error=206, path too long etc." a hundred times. Then, I found a solution/explanation in google-groups, it solved my problem. I post the content and link as it might help others. This website (StackOverflow) really helped me a thousand times. Thanks to you all !

solution/explanation : (Response from Stephen Johnson)

(...) if you're using eclipse plugin go to Project | Properties, choose Google \ App Engine \ ORM and only include directories that you have classes that you want enhanced. By default it does the entire project so that includes a lot of needless files. (...)

Link : original post @ google-groups

Upvotes: 1

TCPIPMAN00
TCPIPMAN00

Reputation: 1

I just tried "skolima" reply and it worked for me. In Eclipse I clicked File->Switch Workspace.

Three things to note:

  1. After I created the workspace in "C:\workspace" I had to update my Project->Properties > Java Build Path > Libraries > Add External JARs...

  2. I'm using Windows 7.

  3. I'm using "Eclipse Java EE IDE for Web Developers"

I hope this others.

Upvotes: 0

skolima
skolima

Reputation: 32684

Read the exception message again. Somewhere along the way Maven is generating a path that is too long for (some) Windows API to handle, try moving your workspace to a directory straight below C:\.

Upvotes: 0

Related Questions