我很难进入机器的起跑线。 1)Windows 7 32位安装了所有服务包 2)安装JDK 1.7.0_21 3)检查PATH只有一个JDK \ bin副本在路径中并且它是正确的。 4)安装Eclipse Juno Java包。 eclipse-java-juno-SR2-win32.zip 5)使用以下教程安装Google App Engine SDK: https://dl.google.com/eclipse/plugin/4.2 选择: - Eclipse的Google插件 - GWT - SDK 没有选择: - 开发人员工具(Android) - 适用于Android的Google App - NDK插件 6)按照教程,下拉Google Icon并选择“New Web Application Project” - 将其命名为Guestbook,如图所示 - 取消选中GWT - 查看Google App Engine - 完成 7)按照教程“作为Web应用程序运行”
此时,控制台显示几个成功的步骤,然后使用jetty崩溃和烧伤,无法建立环回连接。完整的控制台输出附在下面。我在网上搜索过,但一直找不到任何东西。我检查了PATH和JDK。我检查了Eclipse的Windows防火墙规则,它看起来没问题。我查看了Classpath选项卡,但看不到任何明显错误(虽然我不知道它应该是什么样子)
Jun 15, 2013 2:56:51 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml
INFO: Successfully processed E:\User Data\Dave\Documents\Google App Engine Scratch\Guestbook\war\WEB-INF/appengine-web.xml
Jun 15, 2013 2:56:51 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFO: Successfully processed E:\User Data\Dave\Documents\Google App Engine Scratch\Guestbook\war\WEB-INF/web.xml
Jun 15, 2013 2:56:51 PM com.google.appengine.tools.development.SystemPropertiesManager setSystemProperties
INFO: Overwriting system property key 'java.util.logging.config.file', value 'E:\Eclipse Google App Engine\eclipse\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.8.1\appengine-java-sdk-1.8.1\config\sdk\logging.properties' with value 'WEB-INF/logging.properties' from 'E:\User Data\Dave\Documents\Google App Engine Scratch\Guestbook\war\WEB-INF\appengine-web.xml'
Jun 15, 2013 2:56:51 PM com.google.apphosting.utils.jetty.JettyLogger info
INFO: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger
Jun 15, 2013 7:56:52 PM com.google.apphosting.utils.jetty.JettyLogger info
INFO: jetty-6.1.x
Jun 15, 2013 7:56:54 PM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: failed org.mortbay.jetty.nio.SelectChannelConnector$1@15321fc: java.io.IOException: Unable to establish loopback connection
Jun 15, 2013 7:56:54 PM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: failed SelectChannelConnector@127.0.0.1:8888: java.io.IOException: Unable to establish loopback connection
Jun 15, 2013 7:56:54 PM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: failed Server@150305e: java.io.IOException: Unable to establish loopback connection
java.io.IOException: Unable to establish loopback connection
at sun.nio.ch.PipeImpl$Initializer.run(Unknown Source)
at sun.nio.ch.PipeImpl$Initializer.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.nio.ch.PipeImpl.<init>(Unknown Source)
at sun.nio.ch.SelectorProviderImpl.openPipe(Unknown Source)
at java.nio.channels.Pipe.open(Unknown Source)
at sun.nio.ch.WindowsSelectorImpl.<init>(Unknown Source)
at sun.nio.ch.WindowsSelectorProvider.openSelector(Unknown Source)
at java.nio.channels.Selector.open(Unknown Source)
at org.mortbay.io.nio.SelectorManager$SelectSet.<init>(SelectorManager.java:312)
at org.mortbay.io.nio.SelectorManager.doStart(SelectorManager.java:223)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:314)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.Server.doStart(Server.java:235)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:249)
at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:307)
at com.google.appengine.tools.development.AutomaticServerInstanceHolder.startUp(AutomaticServerInstanceHolder.java:26)
at com.google.appengine.tools.development.AbstractServer.startup(AbstractServer.java:80)
at com.google.appengine.tools.development.Servers.startup(Servers.java:82)
at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:237)
at com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:339)
at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48)
at com.google.appengine.tools.development.DevAppServerMain.<init>(DevAppServerMain.java:274)
at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:250)
Caused by: java.net.ConnectException: Connection refused: connect
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Unknown Source)
at sun.nio.ch.Net.connect(Unknown Source)
at sun.nio.ch.SocketChannelImpl.connect(Unknown Source)
at java.nio.channels.SocketChannel.open(Unknown Source)
... 26 more
答案 0 :(得分:1)
问题解决了!
我能够完全确定这个问题的原因并解决它。
我所做的是从“C:\ Program Files \ Java \”(这是Oracle安装程序默认放置它们的地方)中删除了JRE和JDK,并将它们重新安装在“C:\ Java \ Java7 \”中显然是Eclipse和/或Google Android开发工具包仍然对JDK路径名中的空格敏感。这是Eclipse在2005年左右报道的一个古老的普遍问题。
希望这有助于下一个人,因为当你遇到它时,这是一个令人难以置信的令人沮丧的问题。
谢谢!
David Hetherington
答案 1 :(得分:1)
问题:尝试运行“Hello World&#39;使用谷歌eclipse插件的应用程序(eclipse - 开普勒)。
解决方案:添加大卫的答案。如果您安装了多个jre,请确保您指向的jre在绝对路径中没有空格。要改变jre,你指的是去eclipse - window->preferences->server->runtime environments->google app engine->edit
。现在检查您指向的jre版本。就我而言,我在jdk 1.7
安装了Program Files/Java
,jre6
和jre7
安装在同一位置。我将jdk 1.7
移至Program_files
,但仍然收到环回错误。按照上述步骤,将jre版本指向jdk1.7/jre
中Program_files/java
中的版本,因为它指向C:/Program Files/java/jre7
希望这有助于某人。
答案 2 :(得分:0)
您确定没有其他任何与网络应用程序相同的PORT编号运行吗?默认的Web应用程序PORT是8888