我在first hybrid app教程中构建/运行HelloWorld应用程序时遇到了一些麻烦。
当我尝试在MobileFirst Development Server上运行默认的HelloWorld应用程序时,服务器启动并且似乎在MobileFirst Application Builder有机会完成运行之前再次停止(没有错误)。这会导致应用程序无法部署,并显示以下错误消息:
[2015-01-23 14:03:12] Failed to deploy application 'HelloWorld' to MobileFirst Server: org.apache.http.conn.HttpHostConnectException: Connect to 9.175.194.35:10080
[/9.175.194.35] failed: Connection refused: connect
我在Windows 7(64位)上使用Eclipse Kepler SR2(64位)进行尝试。我使用从Oracle下载的Java 7 JDK和从Eclipse Marketplace安装的IBM MobileFirst Platform Studio(6.3.0)。
为避免长/复杂路径名,我已将eclipse安装到C:\ eclipsekepler并使用工作空间目录C:\ workspace。为了确保Eclipse使用正确的JDK,我将以下内容放在我的eclipse.ini文件中(在vmargs之前):
-vm
C:\Program Files\Java\jdk1.7.0_75\bin\javaw.exe
在服务器配置中,我已将主机名设置为我机器的IP地址9.175.194.35(通过运行ipconfig报告)。
以下是完整的控制台日志:
MobileFirst Console output:
[2015-01-23 14:01:25] Starting build process: application 'HelloWorld', all environments
[2015-01-23 14:02:53] Application 'HelloWorld' with all environments build finished.
[2015-01-23 14:02:53] Deploying application 'HelloWorld' with all environments to MobileFirst Server...
[2015-01-23 14:03:12] Failed to deploy application 'HelloWorld' to MobileFirst Server: org.apache.http.conn.HttpHostConnectException: Connect to 9.175.194.35:10080
[/9.175.194.35] failed: Connection refused: connect
MobileFirst Development Server console output (corporate network info redacted):
Listening for transport dt_socket at address: 10777
Launching worklight (WebSphere Application Server 8.5.5.3/wlp-1.0.6.cl50320140731-0257) on Java HotSpot(TM) 64-Bit Server VM, version 1.7.0_75-b13 (en_US)
[AUDIT ] CWWKE0001I: The server worklight has been launched.
[AUDIT ] CWWKZ0058I: Monitoring dropins for applications.
[WARNING ] SRVE9967W: The manifest class path jaxb-api.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[WARNING ] SRVE9967W: The manifest class path activation.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[WARNING ] SRVE9967W: The manifest class path jsr173_1.0_api.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[WARNING ] SRVE9967W: The manifest class path jaxb1-impl.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[AUDIT ] CWWKT0016I: Web application available (default_host): http://<machine-name>.<connection-specific-DNS-suffix>:10080/HelloWorldProject/
[AUDIT ] CWWKT0016I: Web application available (default_host): http://<machine-name>.<connection-specific-DNS-suffix>:10080/_MobileBrowserSimulator/
[AUDIT ] CWWKT0016I: Web application available (default_host): http://<machine-name>.<connection-specific-DNS-suffix>:10080/IBMJMXConnectorREST/
[AUDIT ] CWWKT0016I: Web application available (default_host): http://<machine-name>.<connection-specific-DNS-suffix>:10080/worklight-analytics/
[AUDIT ] CWWKZ0001I: Application _MobileBrowserSimulator started in 11.679 seconds.
[WARNING ] SRVE9967W: The manifest class path jaxb-api.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[WARNING ] SRVE9967W: The manifest class path activation.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[WARNING ] SRVE9967W: The manifest class path jsr173_1.0_api.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[WARNING ] SRVE9967W: The manifest class path jaxb1-impl.jar can not be found in jar file wsjar:file:/C:/workspace/MobileFirstServerConfig/servers/worklight/apps/worklight-management-ui.war!/WEB-INF/lib/jaxb-impl-2.1.12.osgi.jar or its parent.
[AUDIT ] CWWKZ0001I: Application WorklightAnalytics started in 19.007 seconds.
[AUDIT ] CWWKZ0001I: Application HelloWorldProject started in 21.164 seconds.
[AUDIT ] CWWKZ0022W: Application WorklightServices has not started in 30.003 seconds.
[AUDIT ] CWWKT0016I: Web application available (default_host): http://<machine-name>.<connection-specific-DNS-suffix>:10080/worklightconsole/
[AUDIT ] CWWKZ0022W: Application WorklightConsole has not started in 30.015 seconds.
[AUDIT ] CWWKZ0001I: Application WorklightConsole started in 30.083 seconds.
[AUDIT ] CWWKZ0022W: Application WorklightAnalyticsServices has not started in 30.006 seconds.
[AUDIT ] CWWKF0015I: The server has the following interim fixes installed: PI23168.
[AUDIT ] CWWKF0011I: The server worklight is ready to run a smarter planet.
[AUDIT ] CWWKT0016I: Web application available (default_host): http://<machine-name>.<connection-specific-DNS-suffix>:10080/worklightadmin/
[WARNING ] CWNEN0070W: The javax.ws.rs.QueryParam annotation class will not be recognized because it was loaded from the null location rather than from a product class loader.
[WARNING ] CWNEN0070W: The javax.ws.rs.PathParam annotation class will not be recognized because it was loaded from the null location rather than from a product class loader.
[WARNING ] CWNEN0070W: The javax.ws.rs.CookieParam annotation class will not be recognized because it was loaded from the null location rather than from a product class loader.
[WARNING ] CWNEN0070W: The javax.ws.rs.HeaderParam annotation class will not be recognized because it was loaded from the null location rather than from a product class loader.
[WARNING ] CWNEN0070W: The javax.ws.rs.core.Context annotation class will not be recognized because it was loaded from the null location rather than from a product class loader.
[WARNING ] CWNEN0070W: The javax.ws.rs.MatrixParam annotation class will not be recognized because it was loaded from the null location rather than from a product class loader.
我能够使用MobileFirst CLI成功运行等效操作:
cd C:\workspace\HelloWorldProject
mfp start
mfp build
mfp deploy
mfp console
我尝试重新安装JDK,使用Eclipse Luna和Kepler,重新安装MobileFirst工作室并从各种新的工作空间开始,但似乎没有任何区别。有谁知道什么可能是错的?感谢。
更新
要尝试强制MobileFirst使用localhost,而不是将我的计算机的IP地址解析为corportate网络上的主机名,我断开了网络,这确实导致服务器在127.0.0.1上启动,并且应用程序尝试部署到127.0 .0.1。尽管如此,它仍然失败了。
我注意到Mobile Application Builder任务似乎进展到20%,然后坐在那里直到服务器停止运行然后任务完成但由于服务器已停止而无法部署。
这可能是性能问题吗?我在带有4GB RAM的Thinkpad T420上尝试这个。
更新27/01/2015
我的一位同事在他的ThinkPad上安装了Oracle JDK7,Eclipse Luna和IBM MobileFirst Platform Studio(6.3.0),它在硬件/企业软件/网络设置方面与我的相同,并且运行良好。这使我远离企业软件或企业网络设置,并指向配置问题或其他一些软件干扰。我再次尝试卸载所有内容,包括JDK / JRE,使用CCleaner清理注册表,重新安装JDK / JRE,使用默认设置重新安装eclipse + mobilefirst。仍未成功部署。
答案 0 :(得分:2)
我试过2个不同的Linux Ubuntu 14.04,32位和64位以及1个Windows 7 64位。这是我在站立MobileFirst Development Server时发现的经验:
如果使用JDK1.7.0_75并且输出错误,我会使用旧版JDK来试一试。希望有所帮助。
答案 1 :(得分:0)
这对我有用:
答案 2 :(得分:0)
这显然是eclipse和jdk版本的问题。我也经历过这样的困难。 MFP确实存在这种依赖性,这就是为什么你的mfp-cli工作正常的原因。尝试使用eclipse juno或luna与jdk 1.7。它应该工作。