【发布时间】:2020-10-13 18:49:51
【问题描述】:
对于 Java / OSGi 项目,我需要与插入计算机的智能卡进行通信。我使用包 javax.smartcardio 来做到这一点。
当我第一次导入这个包并想使用它时,Eclipse 宣布了一个错误“访问限制:'CommandAPDU' 类型不是 API”。正如https://www.javacardos.com/javacardforum/viewtopic.php?t=918 所建议的那样,我在构建路径中添加了一个可访问性规则模式。之后,一切正常,我可以在本地环境中使用该包。
但现在我想将项目传递给我们的持续集成系统,即 Jenkins 和 Maven。我还提交了 .classpath 文件。在那里我得到了同样的错误:
[错误] 导入 javax.smartcardio.CommandAPDU;
[错误]^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[错误] 访问限制:'CommandAPDU' 类型不是 API(对类路径条目 '/disc2/lunifera/server/jenkins/workspace/tools/hudson.model.JDK/JDK-8/jre 的限制/lib/rt.jar')
由于某种原因,访问规则似乎不适用于 Jenkins。有谁知道如何解决这个问题?非常感谢。
【问题讨论】:
标签: maven jenkins smartcardio