Replacing FC4 Free Java for SUN's Java
by C.F. Scheidecker Antunes
Hello All,
FC4 is interesting because it comes with java and all pre installed.
However I need to replace all of that and have SUN's instead.
Until FC3 I did everything myself manually by:
1 - Installing JDK under /opt/ and creating an /opt/java/ link
2 - creating links under /usr/bin/ for java and javac
3 - changing /etc/profile to include /opt/java/ on the path and create a
classpath
All Java stuff I've put under /opt/
That way I had total control.
Now, FC4 has java stuff all over and config stuff all over.
Rather than learning what it is (although I had not found documentation
that explains all the details) I prefer to remove everything and do it
the good old manual way.
I've also tried jpackage but I did not like it. Again, no control and
non-free is not as easy to install.
Any good docs or comments on this?
Anyone suffering from the same aggravations?
Thanks,
C.F.
18 years, 9 months
Problem compiling tomcat5-5.0.30-8jpp_1fc
by David Walluck
I am not able to build on a Fedora distribution right now, but I am still hoping
that the gcj hackers here can help me. Ultimately, I need tomcat5 built as it is
required by eclipse 3.1.
I am using gcc 4.0.1 (CVS 20050606) and I am wondering if the tomcat5 build
fails due to a compiler bug. I am posting as much output as I could get from
ant below. Let me know if any additional information is needed.
build-webapps-precompile:
[mkdir] Created dir:
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build/server/webapps/admin/WEB-INF/src/admin
[mkdir] Created dir:
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build/webapps/ROOT/WEB-INF/src
[mkdir] Created dir:
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build/webapps/ROOT/WEB-INF/classes
[mkdir] Created dir:
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build/webapps/jsp-examples/WEB-INF/src
dropping /usr/lib/jvm/lib/tools.jar from path as it doesn't exist
[jasper2] log4j:WARN No appenders could be found for logger
(org.apache.jasper.compiler.JspRuntimeContext).
[jasper2] log4j:WARN Please initialize the log4j system properly.
[jasper2] java.lang.NullPointerException
[jasper2] at java.lang.Object.getClass() (/usr/lib/libgcj.so.6.0.0)
[jasper2] at
org.apache.jasper.compiler.TagFileProcessor.loadTagFile(org.apache.jasper.compiler.Compiler,
java.lang.String,
javax.servlet.jsp.tagext.TagInfo, org.apache.jasper.compiler.PageInfo) (Unknown
Source)
[jasper2] at
org.apache.jasper.compiler.TagFileProcessor.access$0(org.apache.jasper.compiler.TagFileProcessor,
org.apache.jasper.compiler.Compiler, java.lang.String,
javax.servlet.jsp.tagext.TagInfo, org.apache.jasper.compiler.PageInfo) (Unknown
Source)
[jasper2] at
org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(org.apache.jasper.compiler.Node$CustomTag)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.Node$CustomTag.accept(org.apache.jasper.compiler.Node$Visitor)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.Node$Nodes.visit(org.apache.jasper.compiler.Node$Visitor)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.Node$Visitor.visitBody(org.apache.jasper.compiler.Node)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.Node$Visitor.visit(org.apache.jasper.compiler.Node$Root)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.Node$Root.accept(org.apache.jasper.compiler.Node$Visitor)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.Node$Nodes.visit(org.apache.jasper.compiler.Node$Visitor)
(Unknown Source)
[jasper2] at
org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(org.apache.jasper.compiler.Compiler,
org.apache.jasper.compiler.Node$Nodes) (Unknown Source)
[jasper2] at org.apache.jasper.compiler.Compiler.generateJava() (Unknown
Source)
[jasper2] at org.apache.jasper.compiler.Compiler.compile(boolean, boolean)
(Unknown Source)
[jasper2] at org.apache.jasper.JspC.processFile(java.lang.String) (Unknown
Source)
[jasper2] at java.lang.reflect.Method.invoke(java.lang.Object,
java.lang.Object[]) (/usr/lib/libgcj.so.6.0.0)
[jasper2] at org.apache.jasper.JspC.execute() (Unknown Source)
[jasper2] at org.apache.tools.ant.TaskAdapter.execute() (Unknown Source)
[jasper2] at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
[jasper2] at org.apache.tools.ant.Task.perform() (Unknown Source)
[jasper2] at org.apache.tools.ant.Target.execute() (Unknown Source)
[jasper2] at org.apache.tools.ant.Target.performTasks() (Unknown Source)
[jasper2] at org.apache.tools.ant.Project.executeTarget(java.lang.String)
(Unknown Source)
[jasper2] at org.apache.tools.ant.taskdefs.Ant.execute() (Unknown Source)
[jasper2] at org.apache.tools.ant.taskdefs.CallTarget.execute() (Unknown
Source)
[jasper2] Error in class org.apache.jasper.JspC
[antcall] Exiting
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build.xml.
BUILD FAILED
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build.xml:566:
The following error occurred while executing this
line:
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build.xml:316:
org.apache.jasper.JasperException
at
org.apache.tools.ant.ProjectHelper.addLocationToBuildException(org.apache.tools.ant.BuildException,
org.apache.tools.ant.Location) (Unknown
Source)
at org.apache.tools.ant.taskdefs.Ant.execute() (Unknown Source)
at org.apache.tools.ant.taskdefs.CallTarget.execute() (Unknown Source)
at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
at org.apache.tools.ant.Task.perform() (Unknown Source)
at org.apache.tools.ant.Target.execute() (Unknown Source)
at org.apache.tools.ant.Target.performTasks() (Unknown Source)
at org.apache.tools.ant.Project.executeTarget(java.lang.String) (Unknown
Source)
at org.apache.tools.ant.Project.executeTargets(java.util.Vector) (Unknown
Source)
at org.apache.tools.ant.Main.runBuild(java.lang.ClassLoader) (Unknown Source)
at org.apache.tools.ant.Main.startAnt(java.lang.String[],
java.util.Properties, java.lang.ClassLoader) (Unknown Source)
at org.apache.tools.ant.launch.Launcher.run(java.lang.String[]) (Unknown
Source)
at org.apache.tools.ant.launch.Launcher.main(java.lang.String[]) (Unknown
Source)
at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)
at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)
Caused by:
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build.xml:316:
org.apache.jasper.JasperException
at org.apache.tools.ant.TaskAdapter.execute() (Unknown Source)
at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
at org.apache.tools.ant.Task.perform() (Unknown Source)
at org.apache.tools.ant.Target.execute() (Unknown Source)
at org.apache.tools.ant.Target.performTasks() (Unknown Source)
at org.apache.tools.ant.Project.executeTarget(java.lang.String) (Unknown
Source)
...14 more
Caused by: org.apache.jasper.JasperException
at org.apache.jasper.JspC.processFile(java.lang.String) (Unknown Source)
at org.apache.jasper.JspC.execute() (Unknown Source)
at java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])
(/usr/lib/libgcj.so.6.0.0)
at org.apache.tools.ant.TaskAdapter.execute() (Unknown Source)
...19 more
--- Nested Exception ---
/home/david/rpm/BUILD/tomcat5-5.0.30/jakarta-tomcat-5.0.30-src/jakarta-tomcat-5/build.xml:316:
org.apache.jasper.JasperException
at org.apache.tools.ant.TaskAdapter.execute() (Unknown Source)
at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
at org.apache.tools.ant.Task.perform() (Unknown Source)
at org.apache.tools.ant.Target.execute() (Unknown Source)
at org.apache.tools.ant.Target.performTasks() (Unknown Source)
at org.apache.tools.ant.Project.executeTarget(java.lang.String) (Unknown
Source)
at org.apache.tools.ant.taskdefs.Ant.execute() (Unknown Source)
at org.apache.tools.ant.taskdefs.CallTarget.execute() (Unknown Source)
at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
at org.apache.tools.ant.Task.perform() (Unknown Source)
at org.apache.tools.ant.Target.execute() (Unknown Source)
at org.apache.tools.ant.Target.performTasks() (Unknown Source)
at org.apache.tools.ant.Project.executeTarget(java.lang.String) (Unknown
Source)
at org.apache.tools.ant.Project.executeTargets(java.util.Vector) (Unknown
Source)
at org.apache.tools.ant.Main.runBuild(java.lang.ClassLoader) (Unknown Source)
at org.apache.tools.ant.Main.startAnt(java.lang.String[],
java.util.Properties, java.lang.ClassLoader) (Unknown Source)
at org.apache.tools.ant.launch.Launcher.run(java.lang.String[]) (Unknown
Source)
at org.apache.tools.ant.launch.Launcher.main(java.lang.String[]) (Unknown
Source)
at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)
at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)
Caused by: org.apache.jasper.JasperException
at org.apache.jasper.JspC.processFile(java.lang.String) (Unknown Source)
at org.apache.jasper.JspC.execute() (Unknown Source)
at java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])
(/usr/lib/libgcj.so.6.0.0)
at org.apache.tools.ant.TaskAdapter.execute() (Unknown Source)
...19 more
--- Nested Exception ---
org.apache.jasper.JasperException
at org.apache.jasper.JspC.processFile(java.lang.String) (Unknown Source)
at org.apache.jasper.JspC.execute() (Unknown Source)
at java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])
(/usr/lib/libgcj.so.6.0.0)
at org.apache.tools.ant.TaskAdapter.execute() (Unknown Source)
at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
at org.apache.tools.ant.Task.perform() (Unknown Source)
at org.apache.tools.ant.Target.execute() (Unknown Source)
at org.apache.tools.ant.Target.performTasks() (Unknown Source)
at org.apache.tools.ant.Project.executeTarget(java.lang.String) (Unknown
Source)
at org.apache.tools.ant.taskdefs.Ant.execute() (Unknown Source)
at org.apache.tools.ant.taskdefs.CallTarget.execute() (Unknown Source)
at org.apache.tools.ant.UnknownElement.execute() (Unknown Source)
at org.apache.tools.ant.Task.perform() (Unknown Source)
at org.apache.tools.ant.Target.execute() (Unknown Source)
at org.apache.tools.ant.Target.performTasks() (Unknown Source)
at org.apache.tools.ant.Project.executeTarget(java.lang.String) (Unknown
Source)
at org.apache.tools.ant.Project.executeTargets(java.util.Vector) (Unknown
Source)
at org.apache.tools.ant.Main.runBuild(java.lang.ClassLoader) (Unknown Source)
at org.apache.tools.ant.Main.startAnt(java.lang.String[],
java.util.Properties, java.lang.ClassLoader) (Unknown Source)
at org.apache.tools.ant.launch.Launcher.run(java.lang.String[]) (Unknown
Source)
at org.apache.tools.ant.launch.Launcher.main(java.lang.String[]) (Unknown
Source)
at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)
at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)
--
Sincerely,
David Walluck
<david(a)zarb.org>
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
18 years, 9 months
Which JVM is faster
by C.F. Scheidecker Antunes
Hello all,
Is there any benchmark comparison between JVMs?
I wonder if the one that comes with FC4 is as fast or faster and if it
is 100% compatible with all java apps.
Any thoughts on that?
Thanks,
C.F.
18 years, 9 months
Re: Odd ClassNotFoundException with RSSOwl
by Andrew Overholt
* Benjamin Pasero <bpasero(a)rssowl.org> [2005-07-26 15:04]:
>
> I see. Unfortunately I will not be able to remove the dependency from JFace
> as well as I did with forms. It is too heavily used in all the Dialogs.
That's okay.
I think for now I'm okay with having the runtime requirement on
eclipse-platform. The sooner we get this out, the better IMHO. Left to
do: 1) get necessary packages either created with JPackage and/or imported
(preferably with aot-compile-rpm) into FE, 2) get RSSOwl built into FE and
test.
Andrew
18 years, 9 months
jpackage.org and FC4
by John M. Gabriele
I just installed Fedora Core 4, and happily, it seems to have all
the Java packages already installed for me and ready to go (during
the install I selected the Java and Eclipse packages, and also dev
tools packages).
Then, later, I noticed this site: http://jpackage.org/
They seem to have many of the same packages that already come
with FC4, and they're rpm's too.
At first I assumed that jpackage.org must be for other rpm-based
distros besides Fedora, but then I came across this article:
http://fedoranews.org/mediawiki/index.php/JPackage_Java_for_FC4
by Paul Howarth. It says:
|
| Fedora Core 4 users should use either the RPM from jpackage.org
| or manually install the Sun Java tarball into /opt. Sun Java 1.5+
| is recommended for stability purposes.
|
What are they talking about? FC4 already comes with Java:
[john@localhost ~]$ yum list | grep gcj
java-1.4.2-gcj-compat.i386 1.4.2.0-40jpp_31rh.FC4 installed
java-1.4.2-gcj-compat-devel.i386 1.4.2.0-40jpp_31rh.FC4 installed
java-1.4.2-gcj-compat-src.i386 1.4.2.0-40jpp_31rh.FC4 installed
libgcj.i386 4.0.0-8 installed
libgcj-devel.i386 4.0.0-8 installed
libgcj-src.i386 4.0.0-8 installed
java-1.4.2-gcj-compat-debuginfo.i386 1.4.2.0-40jpp_31rh.FC4 updates-released
Why would I install Java from jpackage.org when it already comes with
FC4 and works right OOTB?
Should FC4 users be using *any* packages from jpackage.org?
Thanks,
---John
____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs
18 years, 9 months
Re: Odd ClassNotFoundException with RSSOwl
by Andrew Overholt
(I'm sorry, for some reason I didn't CC the list with this mail, either)
* Benjamin Pasero <bpasero(a)rssowl.org> [2005-07-25 18:02]:
> >
> >That won't really work unless we can patch FC's JFace build stuff to allow
> >the JFace jar in the system to have the same dependency removed. But it's
> >a good step forward.
> [...]
> Hm, but if I supply a jface.jar that is compiled into RSSOwl jar, that does
> not have any dependency to Eclipse anymore, doesn't that help? Or is there
> another JFace on the Classpath on FC, that is used first, before looking
> into RSSOwl's one?
We've already got JFace in FC so we should be using it where we can. We
need to be able to build all the code we ship from source. What I've done
in the specfile I posted is to patch the build.xml to not explode the jars
that we have RPMs for already (we will have to make this all jars before we
can put this into Fedora Extras) and just tack those onto the classpath for
the java command. I tried in vain to get MANIFEST.MF to include the jars
in the system on its "Class-Path" line, but eventually gave up and went
back to the java -cp <blah> net.sourceforge... in /usr/bin/rssowl. It
would be nice if we could find some way for both you (upstream) and us
(downstream) to use the same build.xml but I'm content with maintaining our
own rssowl script for running (since you don't have one upstream and it's
so small) and patching out the unjarring of the jars from other packages.
Andrew
18 years, 9 months
Odd ClassNotFoundException with RSSOwl
by Andrew Overholt
Hi,
Ben Pasero was kind enough to create an RSSOwl release for me with the
Eclipse dependency removed (ie. it just depends upon SWT). I built this
code against our SWT RPMs but I'm getting weird errors while running. For
example, if I put in Slashdot's RSS feed into the location bar, it will
load the headlines fine but fail when I click on one to get the actual
story. This is what I'm doing:
gij -cp
/usr/share/eclipse/plugins/org.eclipse.core.runtime_3.1.0.jar:/home/overholt/rssowl/BlowfishJ.jar:/home/overholt/rssowl/codec-1.3.jar:/home/overholt/rssowl/httpclient-3.0.jar:/home/overholt/rssowl/iTextAsian.jar:/home/overholt/rssowl/itext.jar:/home/overholt/rssowl/jdom.jar:/home/overholt/rssowl/jface.jar:/home/overholt/rssowl/logging-1.0.4.jar:/home/overholt/rssowl/res.jar:/home/overholt/rssowl/swt.jar:/home/overholt/rssowl/swt-nl.jar:/home/overholt/rssowl/xerces.jar
-jar rssowl.jar
(with Sun's JVM, I just have to add -Djava.library.path=/usr/lib). The
error I get is:
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.Status not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:rssowl.jar,file:./], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
at java.net.URLClassLoader.findClass(java.lang.String) (/usr/lib/libgcj.so.6.0.0)
at java.lang.ClassLoader.loadClass(java.lang.String, boolean) (/usr/lib/libgcj.so.6.0.0)
at java.lang.ClassLoader.loadClass(java.lang.String) (/usr/lib/libgcj.so.6.0.0)
...19 more
and with Sun's stuff:
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IStatus
at net.sourceforge.rssowl.controller.dialog.ValidateFeedDialog.createDialogArea(Unknown Source)
at net.sourceforge.rssowl.controller.dialog.ValidateFeedDialog.<init>(Unknown Source)
at net.sourceforge.rssowl.controller.EventManager.actionValidateFeeds(Unknown Source)
at net.sourceforge.rssowl.controller.panel.ErrorPanel$2.widgetSelected(Unknown Source)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1021)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2867)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2572)
at net.sourceforge.rssowl.controller.GUI.runEventLoop(Unknown Source)
at net.sourceforge.rssowl.controller.GUI.showGui(Unknown Source)
at net.sourceforge.rssowl.controller.RSSOwlLoader.<init>(Unknown Source)
at net.sourceforge.rssowl.controller.RSSOwlLoader.main(Unknown Source)
Both classes that are apparently not found are in the first jar on the
classpath. Any ideas?
I've put the jars here: http://overholt.ca/rssowl.tar.bz2
Andrew
18 years, 9 months
Learning java?
by Justin Conover
Are books like:
Sams Teach Yourself Java in 24 hours
Head First Java
Good books to start out in Java?
18 years, 9 months
quick and dirty Expect-fu to help manage "java" and "javac" alternatives
by Vadim Nasardinov
There is a mildly annoying gotcha in the way FC4 manages the "java"
and "javac" alternatives. (To be fair, FC4 is merely following the
JPackage suit here.)
The way it works is this. If you install another JDK in addition to
GCJ, you have a choice of specifying your preferred alternative
systemwide like so:
| $ readlink -f /usr/bin/java
| /usr/bin/gij
| $ sudo /usr/sbin/alternatives --config java
|
| There are 2 programs which provide 'java'.
|
| Selection Command
| -----------------------------------------------
| + 1 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
| * 2 /usr/lib/jvm/jre-1.4.2-sun/bin/java
|
| Enter to keep the current selection[+], or type selection number: 2
| $ readlink -f /usr/bin/java
| /usr/lib/jvm/java-1.4.2-sun-1.4.2.08/jre/bin/java
Here's the rub. If you do this, you must remember to also change the
"javac" alternative. (In some cases, you may not care if your
/usr/bin/java and /usr/bin/javac are provided by different vendors.
In most cases, you probably want to be consistent.)
I wrote a script to change both "java" and "javac" alternatives in one
fell swoop. Here's how it works:
| $ sudo ./alt-java
| spawn /usr/sbin/alternatives --config java
|
| There are 2 programs which provide 'java'.
|
| Selection Command
| -----------------------------------------------
| 1 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
| *+ 2 /usr/lib/jvm/jre-1.4.2-sun/bin/java
|
| Enter to keep the current selection[+], or type selection number: 1
| 1
| spawn /usr/sbin/alternatives --config javac
|
| There are 2 programs which provide 'javac'.
|
| Selection Command
| -----------------------------------------------
| 1 /usr/lib/jvm/java-1.4.2-gcj/bin/javac
| *+ 2 /usr/lib/jvm/java-1.4.2-sun/bin/javac
|
| Enter to keep the current selection[+], or type selection number: 1
I am attaching the script in hopes that someone else will find it useful.
------------------------------------------------------------------------------
18 years, 9 months