Open syarramsetty-skyhook opened 5 years ago
You should have two import statements
I tried that one too. Ant-javacard's converter
task adds exportpath of jcre. Because of this, converter doesnt search jars in classpath for exp files. I can upload ant -v
dump tomorrow. Thanks.
First the colon notation is not supposed to work in the first place, just a single jar for jar option.
I'm building applets with two dependencies and it works flawlessly. What is the content (and source) of those jar files?
build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project name="JavaCard and USIM ToolkitApplet" default="dist" basedir=".">
<description>Builds the project. </description>
<target name="dist" description="generate the distribution" >
<tstamp/>
<ant dir="ext/ant"/>
<!-- Create the distribution directory -->
<taskdef name="javacard" classname="pro.javacard.ant.JavaCard" classpath="ext/ant/ant-javacard.jar"/>
<javacard>
<cap jckit="ext/ant/sdks/jc305u3_kit"
javaversion="1.6"
aid="f2:76:a2:88:bc:fb:a6:9d:34:f3:10"
output="build/ToolkitTraining.cap"
sources="src"
classes="build"
export="build"
jar="lib/ToolkitTraining.jar"
jca="build/ToolkitTraining.jca"
version="1.0">
<applet class="com.skyhook.training.ToolkitTraining" aid="f2:76:a2:88:bc:fb:a6:9d:34:f3:10:01"/>
<import jar="usimtoolkit/uicc-api-for-java-card-REL-8.jar"/>
<import jar="usimtoolkit/usim-api-for-java-card-REL-8.jar"/>
</cap>
</javacard>
</target>
<target name="clean" description="clean up">
<!-- Delete the built applet -->
<delete dir="build"/>
<delete dir="lib"/>
</target>
</project>
satya-mbp:usimtoolkit> jar tvf uicc-api-for-java-card-REL-8.jar
0 Tue May 25 11:03:56 EDT 2010 META-INF/
102 Tue May 25 11:03:54 EDT 2010 META-INF/MANIFEST.MF
0 Tue May 25 11:03:52 EDT 2010 uicc/
0 Tue May 25 11:03:52 EDT 2010 uicc/access/
0 Tue May 25 11:03:54 EDT 2010 uicc/access/bertlvfile/
0 Tue May 25 11:03:56 EDT 2010 uicc/access/bertlvfile/javacard/
0 Tue May 25 11:03:54 EDT 2010 uicc/access/fileadministration/
0 Tue May 25 11:03:54 EDT 2010 uicc/access/fileadministration/javacard/
0 Tue May 25 11:03:52 EDT 2010 uicc/access/javacard/
0 Tue May 25 11:03:54 EDT 2010 uicc/system/
0 Tue May 25 11:03:54 EDT 2010 uicc/system/javacard/
0 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/
0 Tue May 25 11:03:54 EDT 2010 uicc/toolkit/javacard/
759 Tue May 25 11:03:52 EDT 2010 uicc/access/FileView.class
2246 Tue May 25 11:03:52 EDT 2010 uicc/access/UICCConstants.class
1231 Tue May 25 11:03:52 EDT 2010 uicc/access/UICCException.class
893 Tue May 25 11:03:52 EDT 2010 uicc/access/UICCSystem.class
239 Tue May 25 11:03:52 EDT 2010 uicc/access/bertlvfile/AdminBERTLVFileView.class
286 Tue May 25 11:03:52 EDT 2010 uicc/access/bertlvfile/BERTLVFileView.class
2854 Tue May 25 11:03:56 EDT 2010 uicc/access/bertlvfile/javacard/bertlvfile.cap
972 Tue May 25 11:03:54 EDT 2010 uicc/access/bertlvfile/javacard/bertlvfile.exp
722 Tue May 25 11:03:52 EDT 2010 uicc/access/fileadministration/AdminException.class
488 Tue May 25 11:03:52 EDT 2010 uicc/access/fileadministration/AdminFileView.class
1047 Tue May 25 11:03:52 EDT 2010 uicc/access/fileadministration/AdminFileViewBuilder.class
2899 Tue May 25 11:03:54 EDT 2010 uicc/access/fileadministration/javacard/fileadministration.cap
1541 Tue May 25 11:03:54 EDT 2010 uicc/access/fileadministration/javacard/fileadministration.exp
2403 Tue May 25 11:03:52 EDT 2010 uicc/access/javacard/access.cap
3962 Tue May 25 11:03:52 EDT 2010 uicc/access/javacard/access.exp
512 Tue May 25 11:03:52 EDT 2010 uicc/access/package.html
891 Tue May 25 11:03:52 EDT 2010 uicc/system/HandlerBuilder.class
358 Tue May 25 11:03:52 EDT 2010 uicc/system/UICCPlatform.class
2176 Tue May 25 11:03:54 EDT 2010 uicc/system/javacard/system.cap
447 Tue May 25 11:03:54 EDT 2010 uicc/system/javacard/system.exp
387 Tue May 25 11:03:52 EDT 2010 uicc/system/package.html
222 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/BERTLVEditHandler.class
207 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/BERTLVViewHandler.class
605 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/EditHandler.class
339 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/EnvelopeHandler.class
463 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/EnvelopeHandlerSystem.class
335 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/EnvelopeResponseHandler.class
495 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/EnvelopeResponseHandlerSystem.class
546 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ProactiveHandler.class
467 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ProactiveHandlerSystem.class
761 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ProactiveResponseHandler.class
499 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ProactiveResponseHandlerSystem.class
6685 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/TerminalProfile.class
8629 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ToolkitConstants.class
1241 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ToolkitException.class
252 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ToolkitInterface.class
1173 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ToolkitRegistry.class
553 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ToolkitRegistrySystem.class
773 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/ViewHandler.class
5237 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/javacard/toolkit.cap
19231 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/javacard/toolkit.exp
661 Tue May 25 11:03:52 EDT 2010 uicc/toolkit/package.html
satya-mbp:usimtoolkit>
satya-mbp:usimtoolkit> jar tvf usim-api-for-java-card-REL-8.jar
0 Mon Jan 04 11:39:50 EST 2010 META-INF/
102 Mon Jan 04 11:39:48 EST 2010 META-INF/MANIFEST.MF
0 Mon Jan 04 11:39:26 EST 2010 uicc/
0 Mon Jan 04 11:39:26 EST 2010 uicc/usim/
0 Mon Jan 04 11:39:26 EST 2010 uicc/usim/access/
0 Mon Jan 04 11:39:48 EST 2010 uicc/usim/access/javacard/
0 Mon Jan 04 11:39:50 EST 2010 uicc/usim/geolocation/
0 Mon Jan 04 11:39:50 EST 2010 uicc/usim/geolocation/javacard/
0 Mon Jan 04 11:39:48 EST 2010 uicc/usim/toolkit/
0 Mon Jan 04 11:39:48 EST 2010 uicc/usim/toolkit/javacard/
3854 Mon Jan 04 11:39:26 EST 2010 uicc/usim/access/SIMConstants.class
4629 Mon Jan 04 11:39:26 EST 2010 uicc/usim/access/USIMConstants.class
2117 Mon Jan 04 11:39:48 EST 2010 uicc/usim/access/javacard/access.cap
7529 Mon Jan 04 11:39:48 EST 2010 uicc/usim/access/javacard/access.exp
558 Mon Jan 04 11:39:26 EST 2010 uicc/usim/access/package.html
1337 Mon Jan 04 11:39:26 EST 2010 uicc/usim/geolocation/GeoLocation.class
597 Mon Jan 04 11:39:26 EST 2010 uicc/usim/geolocation/GeoLocationBuilder.class
712 Mon Jan 04 11:39:26 EST 2010 uicc/usim/geolocation/GeoLocationException.class
266 Mon Jan 04 11:39:26 EST 2010 uicc/usim/geolocation/GeoLocationInfo.class
2570 Mon Jan 04 11:39:50 EST 2010 uicc/usim/geolocation/javacard/geolocation.cap
2170 Mon Jan 04 11:39:50 EST 2010 uicc/usim/geolocation/javacard/geolocation.exp
1830 Mon Jan 04 11:39:26 EST 2010 uicc/usim/toolkit/ToolkitConstants.class
466 Mon Jan 04 11:39:26 EST 2010 uicc/usim/toolkit/USATEnvelopeHandler.class
494 Mon Jan 04 11:39:26 EST 2010 uicc/usim/toolkit/USATEnvelopeHandlerSystem.class
2125 Mon Jan 04 11:39:26 EST 2010 uicc/usim/toolkit/USATTerminalProfile.class
2606 Mon Jan 04 11:39:48 EST 2010 uicc/usim/toolkit/javacard/toolkit.cap
4848 Mon Jan 04 11:39:48 EST 2010 uicc/usim/toolkit/javacard/toolkit.exp
706 Mon Jan 04 11:39:26 EST 2010 uicc/usim/toolkit/package.html
satya-mbp:usimtoolkit>
ant -v
[compile] com/skyhook/training/ToolkitTraining.java added as com/skyhook/training/ToolkitTraining.class doesn't exist.
[compile] Compiling 1 source file to /Users/satya/UsimToolkitTraining.old/build
[compile] Using external javac compiler
[compile] Compilation arguments:
[compile] '-d'
[compile] '/Users/satya/UsimToolkitTraining.old/build'
[compile] '-classpath'
[compile] '/Users/satya/UsimToolkitTraining.old/build:/Users/satya/UsimToolkitTraining.old/ext/ant/sdks/jc305u3_kit/lib/api_classic.jar:/Users/satya/UsimToolkitTraining.old/usimtoolkit/uicc-api-for-java-card-REL-8.jar:/Users/satya/UsimToolkitTraining.old/usimtoolkit/usim-api-for-java-card-REL-8.jar'
[compile] '-sourcepath'
[compile] '/Users/satya/UsimToolkitTraining.old/src'
[compile] '-target'
[compile] '1.6'
[compile] '-g'
[compile] '-Xlint'
[compile] '-Xlint:-options'
[compile] '-Xlint:-serial'
[compile] '-source'
[compile] '1.6'
[convert] command: /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/jre/bin/java -Djc.home=ext/ant/sdks/jc305u3_kit -classpath /Users/satya/UsimToolkitTraining.old/ext/ant/sdks/jc305u3_kit/lib/tools.jar com.sun.javacard.converter.Main -d /var/folders/9d/4c_v35vn69x8vhxw9dszglzr0000gn/T/jccpro23480202826772631 -classdir build -exportpath ext/ant/sdks/jc305u3_kit/api_export_files -verbose -nobanner -useproxyclass -out CAP EXP JCA -applet 0xF2:0x76:0xA2:0x88:0xBC:0xFB:0xA6:0x9D:0x34:0xF3:0x10:0x01 com.skyhook.training.ToolkitTraining com.skyhook.training 0xF2:0x76:0xA2:0x88:0xBC:0xFB:0xA6:0x9D:0x34:0xF3:0x10 1.0
[convert] Executing '/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/jre/bin/java' with arguments:
[convert] '-Djc.home=ext/ant/sdks/jc305u3_kit'
[convert] '-classpath'
[convert] '/Users/satya/UsimToolkitTraining.old/ext/ant/sdks/jc305u3_kit/lib/tools.jar'
[convert] 'com.sun.javacard.converter.Main'
[convert] '-d'
[convert] '/var/folders/9d/4c_v35vn69x8vhxw9dszglzr0000gn/T/jccpro23480202826772631'
[convert] '-classdir'
[convert] 'build'
[convert] '-exportpath'
[convert] 'ext/ant/sdks/jc305u3_kit/api_export_files'
[convert] '-verbose'
[convert] '-nobanner'
[convert] '-useproxyclass'
[convert] '-out'
[convert] 'CAP'
[convert] 'EXP'
[convert] 'JCA'
[convert] '-applet'
[convert] '0xF2:0x76:0xA2:0x88:0xBC:0xFB:0xA6:0x9D:0x34:0xF3:0x10:0x01'
[convert] 'com.skyhook.training.ToolkitTraining'
[convert] 'com.skyhook.training'
[convert] '0xF2:0x76:0xA2:0x88:0xBC:0xFB:0xA6:0x9D:0x34:0xF3:0x10'
[convert] '1.0'
[convert]
[convert] The ' characters around the executable and arguments are
[convert] not part of the command.
[convert] [ INFO: ] Converter [v3.0.5]
[convert] [ INFO: ] Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
[convert]
[convert]
[convert] error: export file toolkit.exp of package uicc.toolkit not found.
[convert] [ INFO: ] conversion completed with 1 errors and 0 warnings.
converter
is happy if I extract jars into exps
dir.
build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project name="JavaCard and USIM ToolkitApplet" default="dist" basedir=".">
<description>Builds the project. </description>
<target name="dist" description="generate the distribution" >
<tstamp/>
<ant dir="ext/ant"/>
<!-- Create the distribution directory -->
<taskdef name="javacard" classname="pro.javacard.ant.JavaCard" classpath="ext/ant/ant-javacard.jar"/>
<javacard>
<cap jckit="ext/ant/sdks/jc305u3_kit"
aid="f2:76:a2:88:bc:fb:a6:9d:34:f3:10"
output="build/ToolkitTraining.cap"
sources="src"
classes="build"
export="build"
jar="lib/ToolkitTraining.jar"
jca="build/ToolkitTraining.jca"
version="1.0">
<applet class="com.skyhook.training.ToolkitTraining" aid="f2:76:a2:88:bc:fb:a6:9d:34:f3:10:01"/>
<import exps="exps" jar="usimtoolkit/uicc-api-for-java-card-REL-8.jar"/>
<import jar="usimtoolkit/usim-api-for-java-card-REL-8.jar"/>
</cap>
</javacard>
</target>
<target name="clean" description="clean up">
<!-- Delete the built applet -->
<delete dir="build"/>
<delete dir="lib"/>
</target>
</project>
[convert] command: /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/jre/bin/java -Djc.home=ext/ant/sdks/jc305u3_kit -classpath /Users/satya/UsimToolkitTraining.old/ext/ant/sdks/jc305u3_kit/lib/tools.jar com.sun.javacard.converter.Main -d /var/folders/9d/4c_v35vn69x8vhxw9dszglzr0000gn/T/jccpro1256689804679404676 -classdir build -exportpath ext/ant/sdks/jc305u3_kit/api_export_files:/Users/satya/UsimToolkitTraining.old/exps -verbose -nobanner -useproxyclass -out CAP EXP JCA -applet 0xF2:0x76:0xA2:0x88:0xBC:0xFB:0xA6:0x9D:0x34:0xF3:0x10:0x01 com.skyhook.training.ToolkitTraining com.skyhook.training 0xF2:0x76:0xA2:0x88:0xBC:0xFB:0xA6:0x9D:0x34:0xF3:0x10 1.0
Check now. exportpath
is appended (-exportpath ext/ant/sdks/jc305u3_kit/api_export_files:/Users/satya/UsimToolkitTraining.old/exps
)
I have two jar files with
.exp
files (USIM.jar
anduicc.jar
) to build anUSIM
applet. This is the snippet ofmy build.xml
It compiles OK. But
converter
fails unless I explicitly extract.exp
files from above jars and put them in a directory and defineimport
target with bothjar
andexps
attributes.