Java

Differences between revisions 26 and 41 (spanning 15 versions)
Revision 26 as of 2006-06-09 04:29:03
Size: 16425
Editor: S0106000fb085cc63
Comment: nuke more junk
Revision 41 as of 2008-08-06 16:24:58
Size: 48
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Contents'''[[BR]][[TableOfContents]]||

Java is a technology from Sun Microsystems. There are several implementations, of which three will be talked about here:

 * '''Free Java:''' GNU classpath and others, these are already included in Ubuntu as of Ubuntu 5.10
 * '''Sun Java:''' Sun Java is the reference implementation. As of Ubuntu 6.06, it is included in ''multiverse''
 * '''IBM Java:''' IBM Java, another implementation, is included in ''multiverse'' of Ubuntu 5.10 and later


== Installing Java ==
=== Ubuntu/Kubuntu 6.06 ===

 * Sun Java5: Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{sun-java5-bin}}} package.

 * Blackdown Java2 1.4 packages: Install the {{{j2re1.4}}} package, available in the ''multiverse'' repositories. Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{j2re1.4}}} package.

=== Ubuntu/Kubuntu 5.10 ===

 * Blackdown Java2 1.4: Enable ''multiverse'' and install the {{{j2re1.4}}} package.

 * Sun Java5: See below

=== Ubuntu 5.04 ===

 * Sun Java5: See below

== Direct installation of Sun packages ==

'''Note: This is only for Ubuntu 5.10 and earlier. See above for 6.06'''

 1. Download the {{{sun-java5-bin_1.5.0-06-1_i386.deb}}} (or {{{sun-java5-bin_1.5.0-06-1_amd64.deb}}} for Amd64) and {{{ sun-java5-jre_1.5.0-06-1_all.deb}}} from http://archive.ubuntu.com/ubuntu/pool/multiverse/s/sun-java5/
 1. Install the {{{unixodbc}}} package
 1. Open a terminal and type {{{sudo dpkg -i sun-java5-jre_1.5.0-06-1_all.deb}}}
 1. Accept the license. '''It will fail, due to needing -bin, but you need to accept the license. You cannot install -bin first'''
 1. Install the -bin with {{{sudo dpkg -i sun-java5-bin_1.5.0-06-1_i386.deb}}} (or {{{sun-java5-bin_1.5.0-06-1_amd64.deb}}} for Amd64)
 1. Run {{{sudo dpkg --configure -a}}} to configure the two java packages

== Sun Java SDK (Software Development Kit) ==

=== Ubuntu/Kubuntu 6.06 ===

 * Sun Java5: Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{sun-java5-bin}}} package.

 * Blackdown Java2 1.4 packages: Install the {{{j2re1.4}}} package, available in the ''multiverse'' repositories. Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{j2re1.4}}} package.

=== Ubuntu/Kubuntu 5.10 ===

 * Sun Java5: After running Direct installation of Sun packages, download sun-java5-jdk_1.5.0-06-1_i386.deb (or {{{ sun-java5-jdk_1.5.0-06-1_amd64.deb}}} for Amd64). Install with {{{sudo dpkg -i sun-java5-jdk_1.5.0-06-1_i386.deb}}} (or {{{sun-java5-jdk_1.5.0-06-1_amd64.deb}}} for Amd64)

 * Blackdown Java2 1.4 packages: Install the {{{j2re1.4}}} package, available in the ''multiverse'' repositories. Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{j2re1.4}}} package.

=== Ubuntu/Kubuntu 5.04 ===

 * Sun Java5: After running Direct installation of Sun packages, download sun-java5-jdk_1.5.0-06-1_i386.deb (or {{{ sun-java5-jdk_1.5.0-06-1_amd64.deb}}} for Amd64). Install with {{{sudo dpkg -i sun-java5-jdk_1.5.0-06-1_i386.deb}}} (or {{{sun-java5-jdk_1.5.0-06-1_amd64.deb}}} for Amd64)

== Selecting the default Java version ==

In Ubuntu 6.06 or 5.10, if you want to use Sun's Java instead of the open source GIJ (GNU Java bytecode interpreter) you need to set it as default. Run:
{{{
  sudo update-alternatives --config java
}}}
and select your preference from the list.

{i} ''Note: You probably want to do the same with jar, javac, javadoc, javah, javap and javaws:
{{{
  sudo update-alternatives --config jar
}}}

To get common java applications (installed using .deb-packages) to run under your JVM of choice, make sure you also edit the JVM configuration file:
{{{
  sudo nano /etc/jvm
}}}
and add the line:
{{{
  /usr/lib/j2sdk1.5-sun
}}}
Packages such as '''ant''' starts the first JVM found in this file.

== Java on Konqueror ==

You may find that Java is disabled, even though it is set up correctly in the "Configure Konqueror" Dialog. Select "HTML Settings->Java" from the Tools menu to enable it.

== Java on Mozilla Firefox ==

=== Ubuntu/Kubuntu 6.06 ===

 * Sun Java5: Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{sun-java5-plugin}}} package.

=== Ubuntu/Kubuntu 5.10 ===

 * Sun Java5: After running Direct installation of Sun packages, download sun-java5-plugin_1.5.0-06-1_i386.deb . Install with {{{sudo dpkg -i sun-java5-plugin_1.5.0-06-1_i386.deb}}}

 * Blackdown Java2 1.4 packages: Install the {{{j2re1.4}}} package, available in the ''multiverse'' repositories. Install it from the {{{Applications}}} -> {{{Add/Remove...}}} menu, or install the {{{j2re1.4}}} package.

=== Ubuntu/Kubuntu 5.04 ===

 * Sun Java5: After running Direct installation of Sun packages, download sun-java5-plugin_1.5.0-06-1_i386.deb . Install with {{{sudo dpkg -i sun-java5-plugin_1.5.0-06-1_i386.deb}}}

== AMD64 ==

'''Note: This page is only for users of Ubuntu 5.04. Users of Ubuntu 5.10 and 6.06 should see RestrictedFormats for the Sun Java5 and Blackdown Java2 1.4 packages.'''

== Installing the Mozilla/Firefox plugin ==
Providing the Mozilla/Firefox plugin is available in your distribution of the JRE (currently Sun's doesn't include it), you can create a symbolic link to it inside the Mozilla and Firefox plugins directories. Apparently copying the plugin will not work. The installation directory will vary depending on whethere you installed using method one or two, so both are documented below:
For method one:
{{{
$ sudo ln -sf /usr/local/j2re-1.4.2/plugin/amd64/mozilla/libjavaplugin_oji.so /usr/lib/mozilla-firefox/plugins/libjavaplugin.so
}}}
{{{
$ sudo ln -sf /usr/local/j2re-1.4.2/plugin/amd64/mozilla/libjavaplugin_oji.so /usr/lib/mozilla/plugins/libjavaplugin.so
}}}

Or for method two:
{{{
$ sudo ln -sf /usr/lib/j2re1.4-blackdown/plugin/amd64/mozilla/libjavaplugin_oji.so /usr/lib/mozilla-firefox/plugins/libjavaplugin.so
}}}
{{{
$ sudo ln -sf /usr/lib/j2re1.4-blackdown/plugin/amd64/mozilla/libjavaplugin_oji.so /usr/lib/mozilla/plugins/libjavaplugin.so
}}}


== PPC ==
= JavaPPC =

##language:en

Due to Non-Free status of most Java implementations, Ubuntu does not
include Java support natively. See RestrictedFormats.

There are two places to get Java for Ubuntu PPC: IBM and Blackdown.

There was a Talk Page at ["JavaPPC/Talk"].

=== IBM ===

IBM produces a Java Development Kit (JDK) for its POWER computers, which
happens to also work on PPC. They are the only place to make available
recent versions of Java for PPC Linux. Their recent versions consist of versions 1.5.0 and 1.4.2 of Java. They also have a 1.3.1 version, but there is no reason to use that. This page will not discuss the use of IBM's 1.3.1 version.

The 1.4.2 JDK is known to work on G3, G4, and G5 Macs, as well as older 604e and 603e Macs. The 1.5.0 JDK is known to work on G3, G4, and G5 Macs, and it is not yet known whether it works on older 604e and 603e Macs. It is not yet known whether either one works on non-Mac PowerPCs. Please update the Wiki if you have more information!

To get IBM's JDK, go to
http://www-128.ibm.com/developerworks/java/jdk/linux/download.html, and choose an SDK for 32-bit iSeries/pSeries. Be sure to get the 32-bit version even if you have a G5. You may choose to download both the latest 1.5.0 and 1.4.2 versions and install both if you wish. In any case, periodically check that page for newer Service Releases, and repeat the process described here whenever there is a new one. There is currently no way to keep track of which Service Release you are on under Ubuntu, so make a note of it. As of this writing, SR1 is the latest of the 1.5.0, and SR5 is the latest of the 1.4.2 version. You will have to register before being allowed to download anything. When you reach the download page, download the TGZ version of the SDK.



==== Installation Process ====



To use the TGZ with Ubuntu, you have to convert it to a DEB. Make sure you
have the tool `make-jpkg` installed from the Multiverse repository (See ["AddingRepositoriesHowto"]):

{{{
 sudo apt-get install java-package
}}}

If you are still using Breezy Badger, you will now need to upgrade the version of the package you just installed. To do this, download [http://archive.ubuntu.com/ubuntu/pool/multiverse/j/java-package/java-package_0.27_all.deb this file] to your desktop and type:

{{{
 cd ~/Desktop
 sudo dpkg -i java-package_0.27_all.deb
}}}

Now convert the 1.4.2 TGZ and install the resulting DEB:

{{{
 make-jpkg IBMJava2-SDK-142.ppc.tgz
 sudo dpkg -i ibm-j2sdk1.4_1.4.2_powerpc.deb
}}}

Now convert the 1.5.0 TGZ and install the resulting DEB:

{{{
 make-jpkg ibm-java2-sdk-50-linux-ppc.tgz
 sudo dpkg -i ibm-j2sdk1.5_1.5.0_powerpc.deb
}}}

'''Note on libraries:''' the IBM Java binaries depend on libstdc++5 and libgtk1.2 packages. At least in Dapper it's possible that these libraries are not installed. In this case, make-jpkg will give a lot of warnings about not being able to find dependecies for library files. To get the dependencies set correctly (and to get the Java to work at all), make sure you have installed libstdc++5 and libgtk1.2 ''before'' issuing the make-jpkg command.

To set the new JRE or JDK as the default, you may need to update your Java alternatives. Run the following command then, when prompted, choose your preferred Java environment from the list. If update-alternatives tells you that there is only one Java environment, continue onward! If you chose to install both 1.4.2 and 1.5.0 versions, you may run this command at any time to switch the one subsequently opened Java applications will use. The one that the Firefox and Opera web browsers use will be unaffected. Which one the Konqueror web browser uses, and whether or not it would be affected, depends on your KDE system settings.

{{{
 sudo update-alternatives --config java
}}}

If you installed a 1.4.2 version, regardless of whether or not you installed a 1.5.0 version, and your processor is not a G5, you must perform yet another step to get it to work. For a G3 or G4, use the following command:

{{{
 sudo sh -c 'echo "JITC_PROCESSOR_TYPE=6" >> /etc/environment'
}}}

For a 604e or 603e, instead use:

{{{
 sudo sh -c 'echo "JITC_PROCESSOR_TYPE=5" >> /etc/environment'
}}}

You may have to log out or restart the computer for this to take effect.

'''IF''' you installed the JDK, the following code tests that everything's working. Open a terminal, and try this for version 1.4.2:

{{{
 cd /usr/lib/j2sdk1.4-ibm/demo/applets/TicTacToe
 ../../../bin/appletviewer example1.html
}}}

To try version 1.5.0:

{{{
 cd /usr/lib/j2sdk1.5-ibm/demo/applets/TicTacToe
 ../../../bin/appletviewer example1.html
}}}

If you see a Tic Tac Toe game, it worked! If you installed the JRE, you don't have an appletviewer or any demos so try whichever program it was that led you to install java in the first place!

Neither the Firefox web browser nor the full Mozilla suite can use version 1.4.2, but they can use 1.5.0 if you configure as follows:

{{{
 mkdir -p ~/.mozilla/plugins
 cd ~/.mozilla/plugins
 ln -s /usr/lib/j2sdk1.5-ibm/jre/bin/libjavaplugin_oji.so
}}}

To control which Java the Konqueror web browser uses, go to your KDE system settings. Select '''Internet & Network -> Web Browser -> Java & JavaScript''', and change the '''Path to Java executable''' to either '''/usr/lib/j2sdk1.4-ibm/bin/java''' or '''/usr/lib/j2sdk1.5-ibm/bin/java'''. To control which Java the Opera web browser uses, go to '''Tools -> Preferences -> Advanced -> Content -> Java options''', and change the path to either '''/usr/lib/j2sdk1.4-ibm/jre/bin''' or '''/usr/lib/j2sdk1.5-ibm/jre/bin'''.





||'''Type'''||'''plugin'''||'''download'''||'''Release'''||'''Deb'''||
||'''i386'''||working||[http://java.sun.com/j2se/1.5.0/download.jsp Sun JRE 5.0 Update 6] || jre-1_5_0_06-linux-i586.bin||sun-j2re1.5_1.5.0+update06_i386.deb||
||'''ppc'''||[http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=343837 bug #343837] || [https://www6.software.ibm.com/dl/lxdk/lxdk-p IBM SDK for 32-bit iSeries/pSeries]||ibm-java2-sdk-50-linux-ppc.tgz|| ||
||'''amd64'''||working||http://www.blackdown.org||j2re-1.4.2-02-linux-i586.bin|| ||


== work-arounds ==
ppc: bug #343837
{{{
? ln -s /usr/lib/j2sdk1.5-ibm/jre/bin/libjavaplugin_oji.so /usr/lib/mozilla-firefox/plugins ?
}}}
[[Anchor(update-alternatives)]]

'''1 - Install suport for 32 bit applications :'''


 sudo apt-get install ia32-libs ia32-libs-gtk linux32

 
'''2 - Download firefox 32 bit version from www.getfirefox.com'''


 http://www.mozilla.com/products/download.html?product=firefox-1.5&os=linux&lang=en-US

   
 (Another kind of installation is in FirefoxNewVersion which however differs in some details (installs into /opt; replaces regular /usr/bin/firefox with a new command), but I never tested :S )


'''3 - Untar the downloaded file like you allways do in Ubuntu, and go inside the directory :'''


 cd ~/Desktop/firefox

 ''(or go where the uncompressed file is)''


'''4 - Create a folder for the 32 bit firefox installation, and copy firefox there : '''


 mkdir /usr/local/firefox32

 cp -r -p ./* /usr/local/firefox32/


'''5 - Create the execution files for 32 bit firefox :'''


  sudo gedit /etc/pango32/pangorc &


 Next add this text to the file :

  [Pango]

  ModuleFiles=/etc/pango32/pango.modules

  [PangoX]

  AliasFiles=/etc/pango/pangox.aliases


 Then create another file :


  sudo gedit /usr/local/bin/firefox32 &


 Next add this text to the file :

  #!/bin/sh

  export GTK_PATH=/usr/lib32/gtk-2.0

  export PANGO_RC_FILE=/etc/pango32/pangorc

  linux32 /usr/local/firefox32/firefox $@



'''6 - Make it executable :'''


 sudo chmod +x /usr/local/bin/firefox32


'''7 - Check if your new 32 bit firefox is working :'''


 firefox32 &

 ''(it says warnings but doesn't matter)''




'''11 - To install Java player to run applets, go to http://www.java.com, and download the linux self stracting file for 32 bit linux computers (I was surprised to see than this file works in amd64 bits Breezy installation) :'''


 http://www.java.com/en/download/linux_manual.jsp


'''12 - To install java :'''


 sudo bash

 chmod 777 ./jre-1_5_0_06-linux-i586.bin

 ''(this file name will depend on the java version you download)''


 ./jre-1_5_0_06-linux-i586.bin

 ''(it will ask you some questions)''


 mkdir /usr/local/java32

 cp -r -p ./jre1.5.0_06/* /usr/local/java32

 cd /usr/local/firefox32/plugins/

 ln -s /usr/local/java32/plugin/i386/ns7/libjavaplugin_oji.so ./


'''13 - Restart firefox32 and check if java is working :'''


 firefox32 &


'''14 - Visit : http://www.java.com/en/download/installed.jsp'''


'''15 - Add an icon at the top panel to start this 'cool' browser :'''

 Click with the right button at the top panel

 Choose : Add to panel

 Choose : Custom application launcher, and press 'Add' button

 
  Name : firefox32

  Generic name : Firefox 1.5 32 bits

  Comment : Firefox with 'Flash' and 'Java'

  Command : firefox32

  Type : Application

  Icon : /usr/share/pixmaps/mozilla-firefox.png



'''16 - Enjoy the net !'''


IMPORTANT NOTE:

 PhilOSparta said in 'Ubuntu forums' that sound was not working properly for him. He solved the problem using the next line (Ubuntu Dapper with gstreamer0.10 will have this issue solved) :


 sudo ln -s /usr/lib/libesd.so.0 /usr/lib/libesd.so.1


Thanks for your attention, kisses


Albert Palacios


Good luck.

Change the files 'firefox32' and 'thunderbird32' to read''

''#!/bin/sh''

''export GTK_PATH=/usr/lib32/gtk-2.0''

''export LD_PRELOAD=/usr/lib32/libpangohack.so.0''

''linux32 /usr/local/<firefox/thunderbird>32/<firefox/thunderbird> $@''


        ''Note that this method is untested AFAIK - please post any potential issues with it. Many thanks to 'lychee' from the forums.

----
CategoryDocumentation CategoryCleanup
#REFRESH 0 http://help.ubuntu.com/community/Java

Java (last edited 2008-08-06 16:24:58 by localhost)