[rhelv6-list] jar command for .war archives missing from JDK

MJang mike at linuxexam.com
Wed Dec 12 04:09:19 UTC 2012


On Tue, 2012-12-11 at 21:46 -0500, Bryan J Smith wrote:
> On Tue, Dec 11, 2012 at 7:19 PM, MJang <mike at linuxexam.com> wrote:
> > Folks,
> > I've been working with some .war archives, and wanted to use the jar command
> > to unpack, modify, and repack them. My understanding is that the jar command
> > should exist in an appropriate JDK RPM.
> > So I installed the java-1.6.0-openjdk RPM. The jar command isn't there. I
> > didn't see it in the java-1.7.0-openjdk RPM either (at least as built for
> > CentOS 6.2).
> > I found the jar command in the JDK RPM downloaded from Oracle/Sun, but that
> > made me wonder -- is the jar command available from any Red Hat native RPM?
> > Did I miss something?
> 
> Yes.
> 
>   o  Short Answer
> 
> Install "java-1.6.0-openjdk-devel" (note the "-devel" at the end)
> 
>   o  Details ...
> 
> Per Koji [1], you'll note the common JPackage Project [2] nomenclature ...
> 
>   java-(version)-(distribution)[-(subpackage)]

Fantastic answer, thank you. java-1.6.0-openjdk-devel actually exists in
the CentOS repos. When I saw JDK, it didn't occur to me that there'd
have to be a separate -devel package for something named "development
kit".

Thanks,
Mike

> 
> The common subpackages are ...
> 
>   [-none] = JRE
>   -demo = Demo programs
>   -devel = JDK
>   -javadoc = Documentation
>   -src = Source Code
> 
> Which means for OpenJDK 1.6.0, respectively ...
> 
>   java-1.6.0-openjdk   <== Only contains the run-time
>   java-1.6.0-openjdk-demo
>   java-1.6.0-openjdk-devel    <== JDK, this is what you're looking for
>   java-1.6.0-openjdk-javadoc
>   java-1.6.0-openjdk-src
> 
> If the "openjdk" distribution seems like it should mean JDK,
> understand this is, again, JPackage Project subpackage nomenclature.
> 
> E.g., since you mention CentOS, then you're only getting OpenJDK in
> the main channel.  But if you have a Red Hat Enterprise subscription,
> you'll have the child channel "Supplementary."  This channel is
> "special" in that Red Hat does not provide the software, but it is
> provided so ISVs can leverage RHN/Portal to distribute packages (long
> story, I won't try to explain further).  So you would have packages
> such as ...
> 
>   java-1.6.0-ibm
>   java-1.6.0-ibm-devel
>    ...
>   java-1.6.0-sun
>   java-1.6.0-sun-devel
>   ...
> 
> Sun is now Oracle, and package names may change based on release date
> (let alone the Java from BEA several years back as well).  The
> "openjdk" is just the distribution label, like "ibm" and "sun"
> ("oracle").   Remember, not all systems would want the full JDK, and
> only need the run-time, hence why the SPEC products sub-packages.  No
> difference than typical RPM "-devel" packages as well (some are just
> header files, and others are far more support, binaries, etc..).
> 
> Now even though you run CentOS, if you have the Sun-Oracle binary, you
> can use the SRPMS/SPEC file from the JPackage Project to produce the
> same subpackages.  I've done this on several occasions, although for
> ISV certification on Red Hat, you might want to stick with the ones in
> Supplementary.
> 
> -- bjs
> 
> P.S.  The one subpackage that differs between ISVs and OpenJDK is the
> browser plug-in.  Long story short, the source code provided for
> OpenJDK from Sun-Oracle doesn't exactly cover the browser plug-in (I
> won't try to go into more details).  So for most ISVs, you'll have the
> subpackage "-plugin" while for OpenJDK, it's a separate package,
> "icedtea-web" [3].
> 
> [1] http://koji.fedoraproject.org/koji/buildinfo?buildID=360484
> (latest OpenJDK 1.6.0)
> [2] http://www.jpackage.org/
> [3] http://koji.fedoraproject.org/koji/packageinfo?packageID=11822
> 
> 
> --
> Bryan J Smith - Professional, Technical Annoyance
> b.j.smith at ieee.org - http://www.linkedin.com/in/bjsmith
> ----------------------------------------------------------
> Computers are precise, but not accurate, and make mistakes
> due to lack of input, as lack of awareness and observation





More information about the rhelv6-list mailing list