初用網易蜂巢遇到的問題

來源:互聯網
上載者:User

標籤:

網易蜂巢是網易推出的一個基於docker容器技術的雲端服務,最近需要用到網易蜂巢的容器。

可以直接用支援ssh串連的終端連到蜂巢

ssh -i id_rsa [email protected]106.2.61.90

蜂巢用的是debian系統

[email protected]170598-2252272e-hl3nx:~# cat /etc/issueDebian GNU/Linux 7 \n \l

 

將項目從github複製到蜂巢

git clone https://github.com/scarlettxu/restaurant.git

因為蜂巢沒有publickey,所以用https協議

 

編譯打包項目

mvn package

將項目包拷貝到tomcat

cp *.war /var/lib/tomcat7/webapps

在瀏覽器訪問發布的服務

http://106.2.61.90:8080/restaurant/noodles

出現了如下錯誤

type Exception reportmessage com/sx/NoodlesServlet : Unsupported major.minor version 51.0 (unable to load class com.sx.NoodlesServlet)description The server encountered an internal error (com/sx/NoodlesServlet : Unsupported major.minor version 51.0 (unable to load class com.sx.NoodlesServlet)) that prevented it from fulfilling this request.exceptionjava.lang.UnsupportedClassVersionError: com/sx/NoodlesServlet : Unsupported major.minor version 51.0 (unable to load class com.sx.NoodlesServlet)org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2905)org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170)org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:461)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1003)org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)java.lang.Thread.run(Thread.java:701)note The full stack trace of the root cause is available in the Apache Tomcat/7.0.28 logs.

這個由於編譯項目所用的java版本和運行是用的java版本不同

maven打包時所用的java版本

[email protected]170598-2252272e-hl3nx:/usr/lib/jvm/default-java/jre# mvn -versionApache Maven 3.0.4Maven home: /usr/share/mavenJava version: 1.7.0_95, vendor: Oracle CorporationJava home: /usr/lib/jvm/java-7-openjdk-amd64/jreDefault locale: en_US, platform encoding: ANSI_X3.4-1968OS name: "linux", version: "3.18.20-nce-amd64", arch: "amd64", family: "unix"

tomcat運行用的default java

[email protected]170598-2252272e-hl3nx:/usr/lib/jvm/default-java/jre# ps -ef|grep tomcatroot         1     0  0 10:27 ?        00:00:00 /bin/sh -c /etc/init.d/tomcat7 start && /etc/init.d/mysql start && /usr/sbin/sshd -Dtomcat7   1601     1  2 11:20 ?        00:00:03 /usr/lib/jvm/default-java/bin/java -Djava.util.logging.config.file=/var/lib/tomcat7/conf/logging.properties -Djava.awt.headless=true -Xmx128m -XX:+UseConcMarkSweepGC -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/share/tomcat7/endorsed -classpath /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar -Dcatalina.base=/var/lib/tomcat7 -Dcatalina.home=/usr/share/tomcat7 -Djava.io.tmpdir=/tmp/tomcat7-tomcat7-tmp org.apache.catalina.startup.Bootstrap startroot      1643   483  0 11:22 pts/0    00:00:00 grep tomcat

default java 版本

[email protected]170598-2252272e-hl3nx:/# java -versionjava version "1.6.0_38"OpenJDK Runtime Environment (IcedTea6 1.13.10) (6b38-1.13.10-1~deb7u1)OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)

查看安裝的所有java版本和default版本

[email protected]170598-2252272e-hl3nx:/usr/lib/jvm/default-java/jre# update-alternatives --display javajava - auto mode  link currently points to /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java/usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java - priority 1061  slave java.1.gz: /usr/lib/jvm/java-6-openjdk-amd64/jre/man/man1/java.1.gz/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priority 1051  slave java.1.gz: /usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gzCurrent ‘best‘ version is ‘/usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java‘.

更改default java版本

[email protected]170598-2252272e-hl3nx:/usr/lib/jvm/default-java/jre# update-alternatives --config javaThere are 2 choices for the alternative java (providing /usr/bin/java).  Selection    Path                                            Priority   Status------------------------------------------------------------* 0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      auto mode  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode  2            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual modePress enter to keep the current choice[*], or type selection number: 2update-alternatives: using /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in manual mode

更改後的java版本

[email protected]170598-2252272e-hl3nx:/usr/lib/jvm/default-java/jre# java -versionjava version "1.7.0_95"OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-1~deb7u1)OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

 這還沒有解決問題,最後是更改了項目裡面的pom.xml裡面的編譯的版本,從1.6改為1.7,才解決了問題

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>

初用網易蜂巢遇到的問題

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.