问题背景 我们最初使用MFP Studio插件v7.0 for Eclipse创建了一个MFP项目(iOS的本机API)。我们在源代码控制下有这个项目(Git on DevOps)。
问题: 从Git(新鲜拉动)下拉MFP项目代码后,如果Studio首次用于“部署Native API”和“部署移动优先适配器”,则可以很好地编译,构建和部署所有内容。然后,我们可以从Studio调用适配器,没有任何问题。执行此操作后,我们还可以切换到MFP CLI以构建和部署工件,CLI命令也可以正常工作。
现在,如果在从Git下拉代码(新的拉动)后,我们立即开始使用MFP CLI来构建和部署工件,而不是使用Studio,就会发生错误。似乎MFP CLI缺少Studio知道如何操作的步骤。在从Git中重新获取之后立即使用CLI进行构建和部署(mfp bd)时出现的错误如下:
$ mfp info 操作系统:darwin x64 发布:14.3.0 系统内存:从16384 MB中免费获得2845 MB 节点:v0.10.30 MobileFirst CLI:7.0.0.00.20150430-1604 当前目录:/Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp
当前项目:/Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp
适配器:LoyaltyPushAdapter(/Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp/adapters/LoyaltyPushAdapter/LoyaltyPushAdapter.xml) 说明:LoyaltyPushAdapter 输入:http 程序:submitNotification
适配器:LoyaltyUserAdapter(/Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp/adapters/LoyaltyUserAdapter/LoyaltyUserAdapter.xml) 说明:LoyaltyUserAdapter 输入:java 过程:[Java适配器不可用]
应用程序:忠诚度(/Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp/apps/Loyalty/application-descriptor.xml) 描述:忠诚度 输入:native ios
服务器位置:/Users/olivieri/.ibm/mobilefirst/7.0.0.00.20150430-1556/server 服务器二进制文件:/Users/olivieri/.ibm/mobilefirst/7.0.0.00.20150430-1556/server/wlp/bin/server MobileFirst实例:/Users/olivieri/.ibm/mobilefirst/7.0.0.00.20150430-1556/server/wlp/usr/servers/worklight objc [4021]:类JavaLaunchHelper在/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/jre/bin/java和/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents中实现/Home/jre/lib/libinstrument.dylib。将使用两者之一。哪一个未定义。 Java HotSpot(TM)64位服务器VM上的WebSphere Application Server 8.5.5.4(1.0.7.cl50420141121-1414),版本1.7.0_75-b13(en_US)
环境变量: TERM_PROGRAM:Apple_Terminal ANDROID_HOME:/ Users / olivieri / android-sdks 期限:xterm-256color 壳:/ bin / bash TMPDIR:/ var / folders / c9 / gf_f0_sd60q1mm9kxwgvlxsr0000gn / T / Apple_PubSub_Socket_Render:/private/tmp/com.apple.launchd.QL5sT9RU2F/Render TERM_PROGRAM_VERSION:343.7 TERM_SESSION_ID:6798439A-3592-4D5C-ABFE-7A2E2D5D80BA ANT_HOME:/Users/olivieri/Development/apache-ant-1.9.4 用户:olivieri SSH_AUTH_SOCK:/private/tmp/com.apple.launchd.E1N6IPACu1/Listeners __CF_USER_TEXT_ENCODING:0x1F5:0x0:0x0 路径:/Users/olivieri/Development/apache-ant-1.9.4/bin:/Users/olivieri/Development/checker-276:/usr/local/bin:/usr/bin:/bin:/usr/sbin: /sbin:/opt/X11/bin:/Applications/IBM/MobileFirst-CLI:/Applications/IBM/MobileFirst-CLI:/Users/olivieri/Development/gradle-2.3/bin:/Users/olivieri/android-sdks/工具:/用户/奥利维/ Android的软件开发工具包/平台的工具 PWD:/Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp JAVA_HOME:/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home LANG:en_US.UTF-8 XPC_FLAGS:0x0 XPC_SERVICE_NAME:0 HOME:/ Users / olivieri SHLVL:2 LOGNAME:olivieri DISPLAY:/private/tmp/com.apple.launchd.qHj5hi31Kp/org.macosforge.xquartz:0 _:/ Applications / IBM / MobileFirst-CLI / IBMnode / bin / node WLP_USER_DIR:/Users/olivieri/.ibm/mobilefirst/7.0.0.00.20150430-1556/server/wlp/usr
$ mfp重启 objc [4345]:类JavaLaunchHelper在/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/jre/bin/java和/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents中实现/Home/jre/lib/libinstrument.dylib。将使用两者之一。哪一个未定义。 停止服务器工作灯。 服务器工作灯已停止。 初始化MobileFirst控制台。 objc [4386]:类JavaLaunchHelper在/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/jre/bin/java和/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents中实现/Home/jre/lib/libinstrument.dylib。将使用两者之一。哪一个未定义。 启动服务器工作灯。 服务器工作单元以进程ID 4385启动。 Ricardos-MBP:LoyaltyReadyApp olivieri $
$ mfp bd [错误: 建筑失败 /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:135:执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:167:执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:185:构建适配器' LoyaltyUserAdapter'失败。失败消息是:' /Users/olivieri/git/Ready.App.5.Loyalty/LoyaltyReadyApp/adapters/LoyaltyUserAdapter/lib不存在。'。该故障可能是由于不正确的Java代码,不兼容的JDK级别,JAVA_HOME未指向有效JDK的位置或缺少依赖性而导致的。请注意,在构建Java适配器时,worklight-jee-library.jar必须位于类路径中。
总时间:2秒 ] 错误:抱歉发生了错误。请查看上面的堆栈了解详情。
我们的JAVA_HOME设置正确,我们使用兼容的JDK级别。
关于可能导致此错误的原因的任何想法?
答案 0 :(得分:1)
您确定将.gitkeep文件放在java-adapter-folder \ lib文件夹中吗?该文件夹默认为空且GIT does not preserve empty folders,因此从GIT下载此项目时,文件夹将丢失,但构建过程可能需要该文件夹。
尝试添加丢失的文件夹,看看是否有帮助。根据结果,我们将有一个行动项目。