Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

How do I silently install Java's SDK and the JRE?

Posted on 2006-06-23
7
Medium Priority
?
735 Views
Last Modified: 2008-02-01
Hello all,

I'm trying to package up both Apache Tomcat and the JDK, along with my own web app into an installer package, so I can simplify deployment.

During the process, I execute 'j2sdk-1_4_2_08-windows-i586-p.exe "/s /v"/qn JAVAUPDATE=0"', to install the JDK silently. The JDK gets installed, but not the java runtime, so when Apache Tomcat is installed, it doesn't find the version of java to use, and won't start up.

But if I manually install j2sdk-1_4_2_08-windows-i586-p.exe, both the JDK and JRE are installed.  After that, I can install Tomcat, it picks up on the Java version, and runs fine.

So, any ideas as to what I'm missing? How can I silently install all the java components that Tomcat needs to run?

Any thoughts would be appreciated, I'm a little stuck on this one.

Thanks!
0
Comment
Question by:Inward_Spiral
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 30

Expert Comment

by:Mayank S
ID: 16969411
The JDK also contains a JRE. Set your JAVA_HOME environment variable to point to the root installation folder of JDK. %JAVA_HOME%\jre contains the JRE.
0
 

Author Comment

by:Inward_Spiral
ID: 16969705
I'm setting both CATALINA_HOME and JAVA_HOME with VBScript during the install:

Set args=wscript.arguments
Set oShell = CreateObject("WScript.Shell")
Set oWshSystemEnv = oShell.Environment("SYSTEM")
oWshSystemEnv("CATALINA_HOME") = args(0)
oWshSystemEnv("JAVA_HOME") = args(1)

I've checked the registry, if I install Tomcat silently after a manual install of the JDK, I see a "Jvm" registry entry in "HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\Tomcat5\Parameters\Java".

But if I silently install both of them, the "Jvm" entry isn't there, and the Tomcat service won't start up.

Messing with registry entries isn't always a good thing, anyone have a suggestion on how to get past this without registry hacks?

0
 
LVL 30

Expert Comment

by:Mayank S
ID: 16969868
Then it perhaps needs that entry to be present - otherwise maybe you can specify it as a parameter to Tomcat while starting up as an extra command-line argument.
0
The top UI technologies you need to be aware of

An important part of the job as a front-end developer is to stay up to date and in contact with new tools, trends and workflows. That’s why you cannot miss this upcoming webinar to explore the latest trends in UI technologies!

 
LVL 26

Expert Comment

by:ksivananth
ID: 16971876
make sure you make the registry entry for java when you are installing java in silent mode.
0
 
LVL 6

Accepted Solution

by:
phuocnh earned 800 total points
ID: 16977852
Hi Inward_Spiral!
I have played with JDK so many times! :)
You install JDK in any box you have and copy entire the folder containing it into the destination box. That is enough.
So, when I made the installer I just packed entire JDK folder and set environment variables in tomcat start up script file (JAVA_HOME). I didn't have to set the registry because of the potential hazards.
Phuoc

0
 

Author Comment

by:Inward_Spiral
ID: 17146143
Sorry for the delay, phuocnh's solution worked for my initial test, but I got pulled onto another project before I could add everything I wanted to the package.

I swear, if I had a dollar for every time that happened...
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
Suggested Courses

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question