Trying to build jdk.base

Erik Joelsson erik.joelsson at oracle.com
Wed Apr 18 07:02:16 PDT 2012


Found the major difference on my own. In the current jigsaw build, the 
actual newly built javac executable is used to compile the module-infos. 
I will experiment using this for now and think about bootstrapping 
issues later.

/Erik

On 2012-04-18 15:19, Erik Joelsson wrote:
> Hello,
>
> I've started looking at how build-infra, or the new build, could be 
> used to build jigsaw. As a first step, I've reintroduced the 
> ModularizeSources.gmk makefile associated generator script that 
> Fredrik wrote a while back. With this, and some additions, I have 
> created a source tree separated into modules. I've also copied the 
> generated module-info.java files from the old build into this source 
> tree. Now I'm trying to compile the jdk.base module from these sources.
>
> The resulting command line looks like this:
>
> /localhome/java/jdk-7-fcs-bin-b147/bin/java -Xms64M -Xmx1100M 
> -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 
> "-Xbootclasspath/p:/localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/langtools/dist/bootstrap/lib/javac.jar" 
> -jar 
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/langtools/dist/bootstrap/lib/javac.jar 
> -modulepath 
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules:/localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src 
> -d 
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules 
> @/localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules/_the.batch.tmp 
>
>
> The errors reported are pasted below. What I wonder is, am I trying to 
> use it the correct way and how much of this functionality is expected 
> to work at this time?
>
> /Erik
>
>
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.base/module-info.java:2: 
> error: no version available for module jdk.desktop.internal at 8-ea
>     requires optional local jdk.desktop.internal at 8-ea;
>                                ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.base/module-info.java:4: 
> error: no version available for module jdk.tls.internal at 8-ea
>     requires optional local jdk.tls.internal at 8-ea;
>                                ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.jaxp/module-info.java:2: 
> error: no version available for module jdk.base.internal at 8-ea
>     requires local jdk.base.internal at 8-ea;
>                       ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/sun.localedata/module-info.java:2: 
> error: no version available for module jdk.base.internal at 8-ea
>     requires local jdk.base.internal at 8-ea;
>                       ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/sun.resources/module-info.java:2: 
> error: no version available for module jdk.base.internal at 8-ea
>     requires local jdk.base.internal at 8-ea;
>                       ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.base/sun/nio/cs/SingleByte.java:36: 
> warning: CharsetMapping is internal proprietary API and may be removed 
> in a future release
> import static sun.nio.cs.CharsetMapping.*;
>                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.base/sun/nio/cs/MS1252.java:34: 
> warning: CharsetMapping is internal proprietary API and may be removed 
> in a future release
> import static sun.nio.cs.CharsetMapping.*;
>                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.base/sun/nio/cs/ISO_8859_15.java:34: 
> warning: CharsetMapping is internal proprietary API and may be removed 
> in a future release
> import static sun.nio.cs.CharsetMapping.*;
>                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.corba/module-info.java:41: 
> warning: ORBD is internal proprietary API and may be removed in a 
> future release
>         class com.sun.corba.se.impl.activation.ORBD;
>                                               ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.corba/module-info.java:45: 
> warning: ServerTool is internal proprietary API and may be removed in 
> a future release
>         class com.sun.corba.se.impl.activation.ServerTool;
>                                               ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.corba/module-info.java:49: 
> warning: TransientNameServer is internal proprietary API and may be 
> removed in a future release
>         class com.sun.corba.se.impl.naming.cosnaming.TransientNameServer;
>                                                     ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.corba/module-info.java:53: 
> error: package com.sun.tools.corba.se.idl.toJavaPortable does not exist
>         class com.sun.tools.corba.se.idl.toJavaPortable.Compile;
>                                                        ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.jaxws/module-info.java:13: 
> error: package com.sun.tools.internal.jxc does not exist
>         class com.sun.tools.internal.jxc.SchemaGenerator;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.jaxws/module-info.java:17: 
> error: package com.sun.tools.internal.xjc does not exist
>         class com.sun.tools.internal.xjc.Driver;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.jaxws/module-info.java:21: 
> error: package com.sun.tools.internal.ws does not exist
>         class com.sun.tools.internal.ws.WsGen;
>                                        ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.jaxws/module-info.java:25: 
> error: package com.sun.tools.internal.ws does not exist
>         class com.sun.tools.internal.ws.WsImport;
>                                        ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.rmi/module-info.java:15: 
> warning: RegistryImpl is internal proprietary API and may be removed 
> in a future release
>         class sun.rmi.registry.RegistryImpl;
>                               ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.rmi/module-info.java:19: 
> warning: Activation is internal proprietary API and may be removed in 
> a future release
>         class sun.rmi.server.Activation;
>                             ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.base/module-info.java:6: 
> warning: Main is internal proprietary API and may be removed in a 
> future release
>         class sun.tools.jar.Main;
>                            ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.base/module-info.java:10: 
> error: cannot find symbol
>         class sun.security.tools.JarSigner;
>                                 ^
>   symbol:   class JarSigner
>   location: package sun.security.tools
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.base/module-info.java:26: 
> warning: KeyTool is internal proprietary API and may be removed in a 
> future release
>         class sun.security.tools.KeyTool;
>                                 ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.compat/module-info.java:7: 
> warning: JdbcOdbcDriver is internal proprietary API and may be removed 
> in a future release
>     provides service java.sql.Driver with sun.jdbc.odbc.JdbcOdbcDriver;
>                                                        ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools.jre/module-info.java:8: 
> error: package sun.security.tools.policytool does not exist
>         class sun.security.tools.policytool.PolicyTool;
>                                            ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:14: 
> error: package com.sun.jdi.connect does not exist
>     requires optional service com.sun.jdi.connect.Connector;
>                                                  ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:15: 
> error: package com.sun.tools.attach.spi does not exist
>     requires optional service com.sun.tools.attach.spi.AttachProvider;
>                                                       ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:16: 
> error: package com.sun.jdi.connect does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.SunCommandLineLauncher;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:16: 
> error: package com.sun.tools.jdi does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.SunCommandLineLauncher;
>                                                                          
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:17: 
> error: package com.sun.jdi.connect does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.RawCommandLineLauncher;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:17: 
> error: package com.sun.tools.jdi does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.RawCommandLineLauncher;
>                                                                          
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:18: 
> error: package com.sun.jdi.connect does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.SocketAttachingConnector;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:18: 
> error: package com.sun.tools.jdi does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.SocketAttachingConnector;
>                                                                          
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:19: 
> error: package com.sun.jdi.connect does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.SocketListeningConnector;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:19: 
> error: package com.sun.tools.jdi does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.SocketListeningConnector;
>                                                                          
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:20: 
> error: package com.sun.jdi.connect does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.ProcessAttachingConnector;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:20: 
> error: package com.sun.tools.jdi does not exist
>     provides service com.sun.jdi.connect.Connector with 
> com.sun.tools.jdi.ProcessAttachingConnector;
>                                                                          
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:21: 
> error: package com.sun.tools.attach.spi does not exist
>     provides service com.sun.tools.attach.spi.AttachProvider with 
> sun.tools.attach.LinuxAttachProvider;
>                                              ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:21: 
> error: package sun.tools.attach does not exist
>     provides service com.sun.tools.attach.spi.AttachProvider with 
> sun.tools.attach.LinuxAttachProvider;
>                                                                                   
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:40: 
> error: package sun.tools.jcmd does not exist
>         class sun.tools.jcmd.JCmd;
>                             ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:44: 
> error: package sun.tools.jconsole does not exist
>         class sun.tools.jconsole.JConsole;
>                                 ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:50: 
> error: package sun.tools.serialver does not exist
>         class sun.tools.serialver.SerialVer;
>                                  ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:54: 
> error: package com.sun.tools.example.debug.tty does not exist
>         class com.sun.tools.example.debug.tty.TTY;
>                                              ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:58: 
> error: package sun.tools.jps does not exist
>         class sun.tools.jps.Jps;
>                            ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:62: 
> error: package sun.tools.jstatd does not exist
>         class sun.tools.jstatd.Jstatd;
>                               ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:66: 
> error: package sun.tools.jstat does not exist
>         class sun.tools.jstat.Jstat;
>                              ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:70: 
> error: package com.sun.tools.hat does not exist
>         class com.sun.tools.hat.Main;
>                                ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:74: 
> error: package sun.tools.jinfo does not exist
>         class sun.tools.jinfo.JInfo;
>                              ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:78: 
> error: package sun.tools.jmap does not exist
>         class sun.tools.jmap.JMap;
>                             ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:82: 
> error: package com.sun.tools.script.shell does not exist
>         class com.sun.tools.script.shell.Main;
>                                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:86: 
> error: package sun.tools.jstack does not exist
>         class sun.tools.jstack.JStack;
>                               ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:90: 
> error: package com.sun.tools.extcheck does not exist
>         class com.sun.tools.extcheck.Main;
>                                     ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:94: 
> error: package sun.tools.native2ascii does not exist
>         class sun.tools.native2ascii.Main;
>                                     ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:98: 
> error: package sun.jvm.hotspot.jdi does not exist
>         class sun.jvm.hotspot.jdi.SADebugServer;
>                                  ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:102: 
> warning: Main is internal proprietary API and may be removed in a 
> future release
>         class sun.applet.Main;
>                         ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.tools/module-info.java:106: 
> error: package sun.rmi.rmic does not exist
>         class sun.rmi.rmic.Main;
>                           ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.scripting/module-info.java:5: 
> error: package com.sun.script.javascript does not exist
>     provides service javax.script.ScriptEngineFactory with 
> com.sun.script.javascript.RhinoScriptEngineFactory;
>                                                                                     
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:17: 
> error: package sun.java2d.cmm does not exist
>     requires optional service sun.java2d.cmm.PCMM;
>                                             ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:18: 
> warning: RenderingEngine is internal proprietary API and may be 
> removed in a future release
>     requires optional service sun.java2d.pipe.RenderingEngine;
>                                              ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:19: 
> warning: UnixPrintServiceLookup is internal proprietary API and may be 
> removed in a future release
>     provides service javax.print.PrintServiceLookup with 
> sun.print.UnixPrintServiceLookup;
>                                                                   ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:20: 
> warning: PSStreamPrinterFactory is internal proprietary API and may be 
> removed in a future release
>     provides service javax.print.StreamPrintServiceFactory with 
> sun.print.PSStreamPrinterFactory;
>                                                                          
> ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:21: 
> error: package sun.java2d.cmm does not exist
>     provides service sun.java2d.cmm.PCMM with sun.java2d.cmm.kcms.CMM;
>                                    ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:21: 
> error: package sun.java2d.cmm.kcms does not exist
>     provides service sun.java2d.cmm.PCMM with sun.java2d.cmm.kcms.CMM;
>                                                                  ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:22: 
> warning: RenderingEngine is internal proprietary API and may be 
> removed in a future release
>     provides service sun.java2d.pipe.RenderingEngine with 
> sun.dc.DuctusRenderingEngine;
>                                     ^
> /localhome/mercurial/jigsaw-closed/build/linux-x64-normal-server-release/jdk/modules_src/jdk.desktop/module-info.java:22: 
> error: package sun.dc does not exist
>     provides service sun.java2d.pipe.RenderingEngine with 
> sun.dc.DuctusRenderingEngine;
>                                                                 ^
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: Some input files use unchecked or unsafe operations.
> Note: Recompile with -Xlint:unchecked for details.
> 47 errors
> 16 warnings
>



More information about the jigsaw-dev mailing list