6

我在第一个混合应用程序教程中构建/运行 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

我尝试使用 Eclipse Luna 和 Kepler 重新安装 JDK,重新安装 MobileFirst 工作室并从各种新的工作区开始,但似乎没有任何区别。有谁知道可能出了什么问题?谢谢。

更新

为了尝试强制 MobileFirst 使用 localhost,而不是将我的机器的 IP 地址解析为公司网络上的主机名,我断开了网络,这确实导致服务器在 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。仍然没有成功部署。

4

3 回答 3

2

我尝试了 2 个不同的 Linux Ubuntu 14.04、32 位和 64 位以及 1 个 Windows 7 64 位。这是我在建立 MobileFirst Development Server 时发现和体验的:

  • Ubuntu 64 位
    • Eclipse Luna 和最新的 JDK1.8x .. 错误
    • Eclipse Kepler SR2 + JDK1.7.0_15 .. 工作
  • Ubuntu 32 位
    • Eclipse Luna 和最新的 JDK1.8.0_25 .. 有效
  • 视窗 7 64:
    • Eclipse Kepler SR2 + JDK1.7.0_15 .. 工作

如果使用 JDK1.7.0_75 并出现错误,我会尝试使用旧版本的 JDK。希望有帮助。

于 2015-01-23T15:48:51.470 回答
0

这对我有用:

  1. 右键单击“MobileFirst 开发服务器”
  2. 单击属性
  3. 转到项目参考
  4. 选择您的 HelloWorld 项目
  5. 再次构建和部署
于 2016-06-02T05:04:08.080 回答
0

这显然是eclipse和jdk版本的问题。我也遇到过这样的困难。MFP 确实有这样的依赖关系,这就是您的 mfp-cli 工作正常的原因。尝试在 jdk 1.7 中使用 eclipse juno 或 luna。它应该工作。

于 2017-04-06T14:54:03.893 回答