Linux 有 JavaCard 3.0.4 SDK 吗?

Is there JavaCard 3.0.4 SDK for Linux?

我正在用JavaCard 3.0.4 版本开发一个applet。

我已经使用 Oracle 安装程序下载并安装了 SDK (http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javame-419430.html#java_card_kit-classic-3_0_4-rr-bin-do)

而且我只找到了 *.bat(converter.bat 等),没有 linux 脚本。

但是版本 2.2.1 和 2.2.2 有 Linux 的版本。

有什么想法吗?

不,据我所知,Linux 没有任何官方版本。也不再支持 Ant 命令。我希望有,但它们似乎已经沉没了。您可能想问问您的供应商,因为制造商在 Java 卡片论坛中具有直接影响力。 Java Card SDK毕竟是Oracle产品,所以他们说了算。

请注意,所有功能都作为平台独立包含在 JAR 文件中,并且 Java Card API 运行时本身也不依赖于主机平台。因此完全可以根据 Java Card SDK 提供的批处理文件创建 ant 文件和/或 shell 脚本。寻找更多信息 .

是的。只需在 Windows 上提取它并在 Linux 下使用。或者您可以从这里获取必要的文件:

https://github.com/martinpaljak/oracle_javacard_sdks

在 Linux 上构建小程序也很简单:

https://github.com/martinpaljak/ant-javacard

我可以提供这个简单的包装器脚本(将其作为 _starter.sh 添加到 Java Card SDK 的 bin 目录并使其可执行):

#!/bin/bash

export JC_CLASSIC_HOME="$(dirname "[=10=]")/../"

for l in "$JC_CLASSIC_HOME/lib"/*.jar ; do
    JC_CLASSPATH="$l:$JC_CLASSPATH"
done

MAIN=""
shift 1
java "-Djc.home=$JC_CLASSIC_HOME" -classpath "$JC_CLASSPATH" "$MAIN" "$@"

然后您可以在同一目录中使用此包装器创建单独的启动器脚本:

capdump.sh:

#!/bin/bash

"$(dirname "[=11=]")/_starter.sh" com.sun.javacard.capdump.CapDump "$@" 

capgen.sh:

#!/bin/bash

"$(dirname "[=12=]")/_starter.sh" com.sun.javacard.jcasm.cap.Main "$@" 

converter.sh:

#!/bin/bash

"$(dirname "[=13=]")/_starter.sh" com.sun.javacard.converter.Main "$@" 

exp2text.sh:

#!/bin/bash

"$(dirname "[=14=]")/_starter.sh" com.sun.javacard.converter.Exp2Text "$@" 

verifycap.sh:

#!/bin/bash

"$(dirname "[=15=]")/_starter.sh" com.sun.javacard.offcardverifier.Verifier "$@" 

verifyexp.sh:

#!/bin/bash

"$(dirname "[=16=]")/_starter.sh" com.sun.javacard.offcardverifier.VerifyExp "$@" 

verifyrev.sh:

#!/bin/bash

"$(dirname "[=17=]")/_starter.sh" com.sun.javacard.offcardverifier.VerifyRev "$@"