Java in Gentoo: Difference between revisions

From Elvanör's Technical Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 12: Line 12:


* The java command on Gentoo honors the CLASSPATH variable. So often the best way to specify the classpath is via this variable.
* The java command on Gentoo honors the CLASSPATH variable. So often the best way to specify the classpath is via this variable.
* Always remember than when using the -jar switch, java ignores both the -cp argument and the CLASSPATH. The classpath is built via the instructions on the Manifest file of your jar.
* Sometimes it can be useful to symlink to existing jars in the place where they are expected by a jar manifest.

Revision as of 10:26, 17 July 2013

Installing a JDK

  • For some applications, you may need the jce USE flag set for the sun-jdk (Java Cryptography Extension). Note that emerging sun-jce-bin is not enough.

Libraries (JAR) locations

  • Java packages are VERY often SLOTed.
  • If a package is SLOTed, the jar go to /usr/share/package-name-SLOT/package-name.jar. Note that in the JAR there should not be any version number. Beware that some old/badly written ebuilds can forget to specify a SLOT, thus, the jar end in /usr/share/package-name/package-name.jar. This can be confusing when using java-config -p which report the location of the JAR (since it may mask the fact that another version of the package exist).

Classpath

  • The java command on Gentoo honors the CLASSPATH variable. So often the best way to specify the classpath is via this variable.
  • Always remember than when using the -jar switch, java ignores both the -cp argument and the CLASSPATH. The classpath is built via the instructions on the Manifest file of your jar.
  • Sometimes it can be useful to symlink to existing jars in the place where they are expected by a jar manifest.