我试图从样本目录下的Java Card SDK中标准的Wallet.java生成CAP文件和导出文件。我编译这个类,使用转换器,并遇到以下:Java Card Converter:版本50.0不受支持的类文件格式
$ javac -g -d classes/ src/com/sun/javacard/samples/wallet/Wallet.java
$ converter -debug -verbose -classdir "$JC_HOME/samples/src" com.sun.javacard.samples.wallet 0xa0:0x0:0x0:0x0:0x62:0x3:0x1:0xc:0x6:0x1 1.0
Java Card 2.2.2 Class File Converter, Version 1.3
Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
parsing /home/user/javacard/java_card_kit-2_2_2/samples/src/com/sun/javacard/samples/wallet/Wallet.class
error: com.sun.javacard.samples.wallet.Wallet: unsupported class file format of version 50.0.
conversion completed with 1 errors and 0 warnings.
我的Java版本和javac版本是相同的,Java 1.6的:
$ java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
$ javac -version
javac 1.6.0_45
我使用JC SDK 2.2.2在Ubuntu 14.04。该转换器的版本是1.3:
$ converter -version
Java Card 2.2.2 Class File Converter, Version 1.3
Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
我似乎无法来解决这个错误“的版本50.0的不支持的类文件格式”。我有些困惑,为什么我在Java 1.6版本50.0中遇到这个错误。
是否有其他人遇到同样的问题?
您必须使用'Java 1.3'来将'.java'文件编译为'.class'文件。因为JCDK2.2.2转换器仅支持Java 1.3生成的'class'文件。 – Abraham
@Abraham,谢谢。我会试试这个。 – cmanning