我们正在尝试使用org.JSON.JSONObject库在适配器端进行一些强烈的json处理。我们有Java类来处理从http适配器接收的数据。
mobilefirst 6.3.0并使用cli 20150701 build
(最近的一篇)。
从eclipse mobilefirst studio环境构建时,这个JSON引用没有问题。
我们正在ubuntu linux 14.04中构建这个环境。执行
时引用org.JSON.JSONObject..x.jar
文件时出错
mfp start or mfp build or mfp deploy
有没有办法在mfp start或mfp build或mfp deploy作为类路径时引用此jar文件。
我们需要像
这样的东西mfp -classpath "path/to/json.jar" build
请帮忙。
答案 0 :(得分:5)
事实证明,CLI尚未识别放置在项目的server / lib文件夹中的jar。为了使这项工作成为可能,您可以对以下文件进行简单的编辑:
[cli install folder] /mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml
在第123行或附近,添加如下所示的第三个文件集元素:
<!-- Classpath for server runtime libraries used when building the WAR -->
<path id="server-classpath">
<fileset dir="${worklight.jars.dir}" includes="worklight-jee-library.jar" />
<fileset dir="${worklight.server.install.dir}/wlp/dev" includes="**/*.jar" />
<!-- add server/lib folder to classpath -->
<fileset dir="${worklight.app.dir}/../server/lib" includes="**/*.jar" />
</path>
之后,运行'mfp start'(或'mfp restart',如果您的服务器已在运行)将使用您添加到类路径中包含的server / lib文件夹的任何jar编译自定义Java代码。
答案 1 :(得分:1)
适配器使用的JAR应添加到 lib 文件夹中的Project的服务器目录中。在构建项目时(在Studio中或通过ant任务),它们将包含在您的Projects WAR文件中,当您部署该WAR时,它们将适用于您的适配器。
答案 2 :(得分:0)
我同意@bjustin_ibm。感谢那。虽然上述方法有效,但还有另一种方法。
替代黑客
只需将您所需的.jars添加到以下位置,它就会在mfp start期间添加到类路径中
/home/instanceubuntu/.ibm/mobilefirst/6.3.0/server/wlp/dev/spi/third-party
此解决方案更简单,并且不必维护build.xml文件。
希望这有帮助。