有没有办法使用命令行而不是使用worklight控制台部署worklight适配器? (因为我的工作灯服务器安装在WAS上,wsadmin命令或类似的东西......)。
答案 0 :(得分:5)
您可以使用in the documentation所述的ANT任务。请注意, Ant任务随Enterprise and Consumer版本一起提供。不是免费的开发人员版本。
部署适配器的Ant任务具有以下结构:
<?xml version="1.0" encoding="UTF-8"?>
<project base="." default="target-name">
<target name="target-name">
<taskdef resource="com/worklight/ant/defaults.properties">
<classpath>
<pathelement location="path_to_worklight-ant-platform.version>.jar" />
</classpath>
</taskdef>
<adapter-deployer worklightserverhost="http://server-address:port" deployable="myAdapter.adapter" />
</target>
</project>
该元素具有以下属性:
worklightserverhost属性指定Worklight服务器的完整URL。
deployable属性指定要部署的.adapter文件。 如果必须部署多个.adapter文件,请为每个文件添加一个元素。
答案 1 :(得分:0)
如果您不想安装Ant或复制额外的Worklight构建工具,则使用unix curl实用程序:
有时使用cURL会导致部署中出现java.lang.StringIndexOutOfBoundsException,但这是由于表单上传不良造成的。正确的格式在这里: 假设二进制文件位于/tmp/workspace6.3/proj1/bin/上,Worklight管理员用户名和密码为“admin”(在本地工作单服务器上) 使用curl unix实用程序我们可以部署
curl -v -X POST -H "Content-Type: multipart/form-data" -F "file=@/tmp/workspace6.3/proj1/bin/sampleAdapter.adapter" --user admin:admin -H "Accept: application/json" http://localhost:10080/worklightadmin/management-apis/1.0/runtimes/proj1/adapters
curl -v -X POST -H "Content-Type: multipart/form-data" -F "file=@/tmp/workspace6.3/proj1/bin/app1-all.wlapp" --user admin:admin -H "Accept: application/json" http://localhost:10080/worklightadmin/management-apis/1.0/runtimes/proj1/applications
这里唯一的问题是这些POST URL与Worklight v6.3-v7兼容,并且它们可能会在未来的主要版本中发生变化,因此请阅读发布admin REST API的文档以获取正确的URL。