[tor-bugs] #12881 [Onionoo]: Set Java version to 7

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Sep 4 08:40:04 UTC 2014


#12881: Set Java version to 7
-----------------------------+-----------------
     Reporter:  iwakeh       |      Owner:
         Type:  enhancement  |     Status:  new
     Priority:  normal       |  Milestone:
    Component:  Onionoo      |    Version:
   Resolution:               |   Keywords:
Actual Points:               |  Parent ID:
       Points:               |
-----------------------------+-----------------

Comment (by karsten):

 I'm having trouble upgrading the Vagrant environment to Java 7.  Here's
 what I did, based on current master (a6abbba):

 {{{
 diff --git a/build.xml b/build.xml
 index 0d04892..657a37f 100644
 --- a/build.xml
 +++ b/build.xml
 @@ -38,8 +38,8 @@
            depends="metrics-lib, init">
      <javac destdir="${classes}"
             srcdir="${javasources}"
 -           source="1.5"
 -           target="1.5"
 +           source="1.7"
 +           target="1.7"
             debug="true"
             deprecation="true"
             optimize="false"
 @@ -51,8 +51,8 @@
    <target name="test" depends="compile">
      <javac destdir="${classes}"
             srcdir="${tests}"
 -           source="1.5"
 -           target="1.5"
 +           source="1.7"
 +           target="1.7"
             debug="true"
             deprecation="true"
             optimize="false"
 diff --git a/vagrant/bootstrap.sh b/vagrant/bootstrap.sh
 index f3f0118..4659bc5 100644
 --- a/vagrant/bootstrap.sh
 +++ b/vagrant/bootstrap.sh
 @@ -9,7 +9,10 @@ apt-get -y upgrade
  echo "Installing required packages."
  apt-get install -y libcommons-codec-java libcommons-compress-java \
  libcommons-lang-java libgoogle-gson-java junit4 libservlet3.0-java \
 -openjdk-6-jdk ant liblog4j1.2-java tomcat6
 +openjdk-7-jdk ant liblog4j1.2-java tomcat6
 +
 +echo "Switching to Java 7."
 +update-java-alternatives -s java-1.7.0-openjdk-amd64

  echo "Setting up paths and creating symbolic links."
  mkdir -p /srv/onionoo.torproject.org/onionoo/
 }}}

 Here are Tomcat's logs after deploying `onionoo.war`:

 {{{
 Sep 4, 2014 1:37:05 AM org.apache.catalina.startup.HostConfig deployWAR
 INFO: Deploying web application archive onionoo.war
 Sep 4, 2014 1:37:05 AM org.apache.tomcat.util.modeler.Registry
 registerComponent
 SEVERE: Null component
 Catalina:type=JspMonitor,name=jsp,WebModule=//localhost/onionoo,J2EEApplication=none,J2EEServer=none
 Sep 4, 2014 1:37:05 AM org.apache.catalina.startup.HostConfig deployWAR
 SEVERE: Error deploying web application archive onionoo.war
 java.lang.UnsupportedClassVersionError:
 org/torproject/onionoo/server/NodeIndexer : Unsupported major.minor
 version 51.0 (unable to load class
 org.torproject.onionoo.server.NodeIndexer)
         at
 org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2822)
         at
 org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159)
         at
 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
         at
 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
         at
 org.apache.catalina.startup.WebAnnotationSet.loadClassAnnotation(WebAnnotationSet.java:145)
         at
 org.apache.catalina.startup.WebAnnotationSet.loadApplicationListenerAnnotations(WebAnnotationSet.java:73)
         at
 org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:56)
         at
 org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:297)
         at
 org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1078)
         at
 org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
         at
 org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
         at
 org.apache.catalina.core.StandardContext.start(StandardContext.java:4612)
         at
 org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
         at
 org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
         at
 org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
         at
 org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943)
         at
 org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:778)
         at
 org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:504)
         at
 org.apache.catalina.startup.HostConfig.check(HostConfig.java:1385)
         at
 org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:306)
         at
 org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
         at
 org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1389)
         at
 org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1653)
         at
 org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1662)
         at
 org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1642)
         at java.lang.Thread.run(Thread.java:701)
 }}}

 Restarting Tomcat seems to fix this problem, but doing that in the
 bootstrap script is rather ugly.

 Any idea how we could fix this properly?

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/12881#comment:6>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list