<AWT Dev> Can't compile (external) code against sun.awt.event package?
Roman Kennke
roman at kennke.org
Wed Sep 28 15:06:27 PDT 2011
Am Mittwoch, den 28.09.2011, 14:39 -0700 schrieb Phil Race:
> javac -XDignore.symbol.file=true
>
> although since the whole intent of the behaviour is to discourage external code
> from accessing sun.* classes etc, this isn't something that's prominently
> documented.
Cool that worked. This is perfect for us, because cacio is more or less
intended as a quasi-internal external library. Our initial hope was to
get it integrated in openjdk to avoid messing with the bootclasspath,
but since jdk7 this is no longer required as far as I can tell.
Cheers, Roman
>
> -phil.
>
>
> On 9/28/2011 2:30 PM, Mario Torre wrote:
> > Hi Phil,
> >
> > Thanks for the explanation. Since we compile cacio against the rt.jar that would make sense...
> >
> > On the other end, this is a problem, since building cacio will require a source distribution now... Is there any way to force javac to tolerate "friendly" code?
> >
> > Cheers,
> > Mario
> > ---
> > pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF
> > Fingerprint: BA39 9666 94EC 8B73 27FA FC7C 4086 63E3 80F2 40CF
> >
> > http://www.ladybug-studio.com
> >
> > IcedRobot: www.icedrobot.org
> > Proud GNU Classpath developer: http://www.classpath.org/
> > Read About us at: http://planet.classpath.org
> > OpenJDK: http://openjdk.java.net/projects/caciocavallo/
> >
> > Please, support open standards:
> > http://endsoftpatents.org/
> >
> >
> >
> >
> > Il giorno 28/set/2011, alle ore 23:19, Phil Race ha scritto:
> >
> >> jSince JDK 1.6, javac has disabled access to new *internal* classes/packages.
> >> But it only operates when compiling against an rt.jar image, not your just built class files ..
> >> So I'd suppose that sun.awt.event was new in 1.6 or later.
> >>
> >> -phil.
> >>
> >> On 9/28/2011 2:05 PM, Roman Kennke wrote:
> >>> Hi,
> >>>
> >>> I am trying to compile the Cacio project against vanilla OpenJDK7. One
> >>> of the classes references IgnorePaintEvent. This class cannot be
> >>> compiled:
> >>>
> >>> [INFO] Compilation failure
> >>>
> >>> /home/roman/src/hg/caciocavallo/shared/src/main/java/sun/awt/peer/cacio/CacioComponentPeer.java:[70,20] error: package sun.awt.event does not exist
> >>> /home/roman/src/hg/caciocavallo/shared/src/main/java/sun/awt/peer/cacio/CacioComponentPeer.java:[726,20] error: cannot find symbol
> >>>
> >>>
> >>>
> >>> It used to work when I explicitely set the bootclasspath to an OpenJDK
> >>> build that I just built before (snippet from ant script:
> >>>
> >>> <javac srcdir="${dir.src.shared.classes}"
> >>> destdir="${dir.build.shared.classes}"
> >>> bootclasspath="${openjdk}/classes"
> >>> debug="${compile.debug}"
> >>> />
> >>>
> >>> However, now that JDK7 is out I was thinking it would be great to
> >>> compile against a vanilla OpenJDK7 rt.jar. I verified that the class is
> >>> in that rt.jar and that I am really using the JDK7 javac. I wonder why
> >>> javac cannot find it. Cacio code uses a lot of other internal classes
> >>> (sun.awt.AppContext, sun.awt.SunToolkit, etc etc) and it only issues
> >>> warnings about those. I think I must be missing something...
> >>>
> >>> Regards, Roman
> >>>
>
>
More information about the awt-dev
mailing list