0

I have a GWT project called ProjectAwhich is a simple web application project generated with the GWT eclipse plugin.

Also, I have second project (projectB) which is a pure Java project with the following structure

src/com/test/shared/TestClass.java
src/com/test/Shared.gwt.xml

Shared.gwt.xml lokes like this:

<?xml version="1.0" encoding="UTF-8"?>
<module rename-to='shared'>
    <inherits name='com.google.gwt.user.User'/>
    <source path='shared'/>
</module>

TestClass.java is:

public class TestClass {

  public static void start() {
    // do something    
  }

}

In projectA's gwt.xml I included <inherits name="com.test.Shared" />. I use TestClass.start() in some method of projectA. I then included projectB in projectA. Therefore I right clicked in projectA >Properties > Java Build Path > Projects and added projectB. I switched to the Order and Export tab and activated the checkmark on projectB.

So far so good. When I perform a GWT compile on projectA I get no errors, but when I run projectA in SuperDevMode the compiler prints the following errors:

GET /recompile/mobilePhoneGapIOS
   Job test.mobile.MobilePhoneGapIOS_1_4
      starting job: test.mobile.MobilePhoneGapIOS_1_4
      binding: mgwt.density=xhigh
      Compiling module test.mobile.MobilePhoneGapIOS
         Ignored 1 unit with compilation errors in first pass.
Compile with -strict or with -logLevel set to TRACE or DEBUG to see all errors.
         Computing all possible rebind results for 'com.gwtplatform.mvp.client.ApplicationController'
            Rebinding com.gwtplatform.mvp.client.ApplicationController
               Invoking generator com.gwtplatform.mvp.rebind.ApplicationControllerGenerator
                  [ERROR] The type 'test.mobile.client.BootstrapperImpl' was not found.
         [ERROR] Errors in 'gen/com/google/gwt/lang/test_00046mobile_00046MobilePhoneGapIOS__EntryMethodHolder.java'
            [ERROR] Line 3: Failed to resolve 'com.gwtplatform.mvp.client.ApplicationController' via deferred binding
         [WARN] For the following type(s), generated source was never committed (did you forget to call commit()?)
            [WARN] com.gwtplatform.mvp.client.ApplicationControllerImpl
         Unification traversed 597 fields and methods and 351 types. 2 are considered part of the current module and 22 had all of their fields and methods traversed.
         [WARN] Some stale types ([test.mobile.client.BootstrapperImpl$7, test.mobile.client.BootstrapperImpl$6, test.mobile.client.BootstrapperImpl$5, test.mobile.client.BootstrapperImpl$4, test.mobile.client.BootstrapperImpl$3, test.mobile.client.BootstrapperImpl$2$3, test.mobile.client.BootstrapperImpl, test.mobile.client.BootstrapperImpl$2$2, test.mobile.client.BootstrapperImpl$2, test.mobile.client.BootstrapperImpl$1, com.gwtplatform.dispatch.rest.client.serialization.com_gwtplatform_mvp_client_DesktopGinjector_DesktopGinjectorGinjector_fragment, test.mobile.client.BootstrapperImpl$9, test.mobile.client.BootstrapperImpl$8, com.gwtplatform.mvp.client.com_gwtplatform_mvp_client_DesktopGinjectorImpl, com.gwtplatform.mvp.client.DesktopGinjectorProvider, test.mobile.client.BootstrapperImpl$2$1, test.mobile.client.com_gwtplatform_mvp_client_DesktopGinjector_DesktopGinjectorGinjector_fragment, com.gwtplatform.mvp.client.ClientGinjector, test.mobile.client.BootstrapperImpl$10]) were not reprocessed as was expected. This is either a compiler bug or a Generator has legitimately stopped creating these types.
      [ERROR] Compiler returned false
      [WARN] recompile failed
      [WARN] continuing to serve previous version 

The errors do not show the TestClass class but when I comment it out (do not use TestClass.start()) then it compiles without problems in SDM.

I know I could precompile projectB and include the source as jar lib in projectA but I want to be able to modify the code of projectB all the time.

How do I get SuperDevMode working while using the linked projectB?

Michael
  • 32,527
  • 49
  • 210
  • 370

1 Answers1

-1

Generators may require to have compiled .class files in your path. So try to include your bin/ (or whatever it's called by Eclipse) folder into the classpath

Vadim
  • 1,125
  • 8
  • 18