java - 在 liferay portlet 中使用 Skype gradle 依赖项时出现错误
问题描述
我正在 Liferay portlet 中开发一个项目,我必须使用 Skype Gradle 依赖项在 Skype 组上发送消息。
我把依赖项
(compile group: 'com.github.taksan', name: 'skype-java-API', version: '1.7')
并build.gradle
部署。它工作正常。
但是每当我导入或使用Skype包时,我都会收到类似的错误
未解决的要求:Import-Package: com.skype_ [Sanitized]
如何解决这个问题,如果可能的话,你能给我一个代码或建议吗?如何使用 Liferay java 代码向 Skype 群组发送通知消息?
解决方案
gradle 依赖项在构建时应用。他们不会神奇地使代码在运行时可用。
理想情况下,您会发现 Skype API 代码被打包为 OSGi 包(我目前处于低带宽状态,无法检查)并将其部署到 OSGi 运行时 (Liferay) 以使其可用。您可能还需要使其传递依赖项可用。
不太理想的是,您会发现有人重新打包为 OSGi 包的 API jar 版本。或者您自己执行此操作(并向原始维护者发送拉取请求)
更不理想的是,您将在自己的代码中包含 API jar。在 Liferay 工作区中,您可以使用compileInclude
gradle 依赖声明中的指令来执行此操作。在这里查看缺点和后果(免费注册所需的免费课程)
推荐阅读
- c++ - 使用套接字编程的c ++中的stringstream vs ifstream(ofstream)
- python - 表功能不在外壳中打印
- mysql - 查找没有重复的部门名称和位置
- eclipse - 如何在首选项页面中创建下一个和上一个按钮?
- python - 熊猫读错列
- python - 获取所有赋值语句的 Python AST 库
- node.js - ludown parse toqna 命令问题将逗号替换为 \r\n
- android - Firebase Crashlytics 构建错误:“找不到 io.fabric.tools:gradle:1.26.1”
- drupal - Drupal 未检测到模块
- html - 网站占用的空间超出其应有的空间(超过 100vh)