I'm working on a distributed build system for gwt and I seem to have
run into 2 problems.

First problem is related to UiBinder. Once I transfer all the files to
the remote machine (that is src, required jars and result emitted by
precompile step) I changed the classpath context and executed compile
perms as follows:

new CompilePerms(options).run(logger);

where options is an instance of CompilePermsOptions.

the error I get is

   Scanning for additional dependencies: file:/D:/Devel/open-source/
gwt-distributed-compiler/agent/0002/src/hr/example/orka/client/panels/
MainPanel.java
      Computing all possible rebind results for
'hr.example.orka.client.panels.MainPanel.MainPanelUiBinder'
         Rebinding
hr.tkd.orka.client.panels.MainPanel.MainPanelUiBinder
            Invoking generator
com.google.gwt.uibinder.rebind.UiBinderGenerator
               [ERROR] Unable to find resource: hr/example/orka/client/
panels/MainPanel.ui.xml
   [ERROR] Errors in 'file:/D:/Devel/open-source/gwt-distributed-
compiler/agent/0002/src/hr/example/orka/client/panels/MainPanel.java'
      [ERROR] Line 10:  Failed to resolve
'hr.example.orka.client.panels.MainPanel.MainPanelUiBinder' via
deferred binding
   Scanning for additional dependencies: jar:file:/D:/Devel/gwt/trunk/
build/staging/gwt-0.0.0/gwt-user.jar!/com/google/gwt/user/client/ui/
UIObject.java
      [WARN] For the following type(s), generated source was never
committed (did you forget to call commit()?)
         [WARN]
hr.example.orka.client.panels.MainPanel_MainPanelUiBinderImpl
   [ERROR] Cannot proceed due to previous errors

If I use same src, libs and precompile result and execute the
following command

java -cp ... com.google.gwt.dev.CompilePerms hr.example.orka.Example -
workDir work -perms 0

everything works just fine.... Does anyone have any idea why would I
get the above mentioned error?

Second problem is that once I transfer files to the other machine,
where the CompilePerms is executed - once everything is finished  the
jar files, which were added to the ClasspathContext using
URLClasspathLoader don't seem to be unloaded even when the context is
reverted to what it was before and all the references are set to null.

prevClassLoader = Thread.currentThread().getContextClassLoader();
URLClassLoader urlClassLoader = URLClassLoader.newInstance(
                classpathURLs.toArray(new URL[] {}), prevClassLoader);
Thread.currentThread().setContextClassLoader(urlClassLoader);

new CompilePerms(options).run(logger);
//System.gc();
//System.gc();
Thread.currentThread().setContextClassLoader(prevClassLoader);
urlClassLoader = null;
classpathURLs = null;

Is it possible that some other classloader, within the gwt code, has
set some references to hose jars?

-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to