I am trying to install Tomcat to test DB2 web services and I ran into several problems on my Fedora Core 5 server to start the Tomcat server.
This is how I solved this. I found this problem widely reported but very few instructions to solve the problem.
Install Tomcat:
# yum install tomcat5 tomcat5-webapps tomcat5-admin-webapps
Try to start tomcat
# service tomcat5 start
I noticed these errors.
Starting tomcat5: /usr/bin/rebuild-jar-repository: error: Could not find commons-collections Java extension for this JVM /usr/bin/rebuild-jar-repository: error: Could not find commons-logging-api Java extension for this JVM /usr/bin/rebuild-jar-repository: error: Some detected jars were not found for this jvm /usr/bin/rebuild-jar-repository: error: Could not find xml-commons-apis Java extension for this JVM /usr/bin/rebuild-jar-repository: error: Some detected jars were not found for this jvm /usr/bin/rebuild-jar-repository: error: Could not find commons-beanutils Java extension for this JVM /usr/bin/rebuild-jar-repository: error: Could not find commons-digester Java extension for this JVM /usr/bin/rebuild-jar-repository: error: Could not find commons-logging Java extension for this JVM /usr/bin/rebuild-jar-repository: error: Some detected jars were not found for this jvm find: warning: you have specified the -mindepth option after a non-option argument -type, but options are not positional (-mindepth affects tests specified before it as well as those specified after it). Please specify options before other arguments. find: warning: you have specified the -maxdepth option after a non-option argument -type, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments. Using CATALINA_BASE: /usr/share/tomcat5 Using CATALINA_HOME: /usr/share/tomcat5 Using CATALINA_TMPDIR: /usr/share/tomcat5/temp Using JRE_HOME: [ OK ]
I checked each RPM install and noticed that even though the RPM was installed correctly but the jar files were missing. This might be due to the fact that I do a lot of install / uninstall of RPMs and somewhere things got broken.
# rpm -qa | grep -i jakarta-commons-logging
The above output shows that the jar file is installed in /usr/share/java/commons-logging-1.0.4.jar but this file was not there when I checked it.
So, I uninstalled the RPMs that were supposed to have valid JARs file and re-installed them using these commands.
# rpm --nodeps -e jakarta-commons-logging-1.0.4-2jpp_10fc # yum install jakarta-commons-logging # rpm -qil jakarta-commons-logging.x86_64 0:1.0.4-2jpp_10fc # ls -l /usr/share/java/commons-logging-api-1.0.4.jar # rpm -qa | grep jakarta-commons-digester.x86_64 # rpm -qa | grep jakarta-commons-digester # rpm --nodeps -e jakarta-commons-digester-1.7-2jpp_10fc # yum install jakarta-commons-digester # rpm -qil jakarta-commons-digester # ls -l /usr/share/java/commons-digester-1.7.jar # rpm -qa | grep jakarta-commons-collections # rpm --nodeps -e jakarta-commons-collections-3.1-2jpp_5fc # yum install jakarta-commons-collections # rpm -qa | grep jakarta-commons-beanutils # rpm --nodeps -e jakarta-commons-beanutils-1.7.0-2jpp_6fc # yum install jakarta-commons-beanutils
After above changes, the missing jar problem goes away but I see these warnings. I have no idea what these are.
# service tomcat5 start Starting tomcat5: find: warning: you have specified the -mindepth option after a non-option argument -type, but options are not positional (-mindepth affects tests specified before it as well as those specified after it). Please specify options before other arguments. find: warning: you have specified the -maxdepth option after a non-option argument -type, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments. Using CATALINA_BASE: /usr/share/tomcat5 Using CATALINA_HOME: /usr/share/tomcat5 Using CATALINA_TMPDIR: /usr/share/tomcat5/temp Using JRE_HOME: [ OK ]