版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/freudlv/article/details/26499817

本文讲述在Eclipse环境下。怎样创建一个Java卡的项目,新建一个APPLET。执行在Java卡片上。

在建立项眼下,必须安装好环境:先下载一个Eclipse。然后安装JCOP就可以。

(JCOP的下载,须要与NXP签订协议才干拿到安装文件,当然网上可能找到别的版本号,这里不讨论)。安装次序:安装好Eclipse,然后安装JCOP。然后导入JCOP的授权文件。也能够參考以下这篇文章:

环境搭建:http://blog.csdn.net/menghnhhuan/article/details/7616690

 

眼下我使用的Eclipse Version: Kepler ServiceRelease 2

建立project:

1.      新建一个JAVA卡的项目:

2.选择“Java Card Project”后。并填入Project name得到:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnJldWRfbHY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

3.点击Next。下一页的配置例如以下,仅仅须要勾选两项。至于不同版本号的差异,临时我还不知道。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnJldWRfbHY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

4.点击Next后,下一页的配置例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnJldWRfbHY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

5.点击Next,下一页须要填入包和类名。(包须要全小写,类名须要全大写)

6.点击Next,须要填入Package和Applet的AID.

7.点击Finish,就能够看到项目:

8.生成的代码例如以下:

此时,Eclipse会自己主动编译代码,没有提示不论什么出错,表明代码已经被编译好。

 

9.编译完毕,就能够開始调试了,调试工具使用IBM的jcop(如今授权给NXP了)。启动方式例如以下:

点击这个绿色的虫子,然后选择 Debug Configurations.

10.在 “Java Card Application”处,右键,New,得到下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnJldWRfbHY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

11.点击 Apply,然后点击Debug,就能够欢快地debug了。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnJldWRfbHY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

 

这个时候,代码就会载入到模拟器里面,能够发指令试一试我们的Hello world了。

发送/send 00A4040006A00000000901指令,就能够看到模拟器的响应,能够设置断点进行debug.

注意几点:

1. 假设有提示出错,考虑是否编译器的版本号问题:Progect –》Properties-》Java Complier;(我眼下选择的Java编译器版本号是1.6)

2. 在进行debug的时候,须要New一个新的模拟器;

3.仅仅须要New一次,执行一次模拟器。假设执行多了,须要去debug的窗体关闭,否则会多个模拟器同一时候执行。

这篇文章仅仅是大致讲了个流程。实际上每一个人操作的时候都会遇到各种各样的问题。

比方安装JCOP有问题,比方建立project到最后提示出错,比方调试的指令不知道怎么发。

仅仅能慢慢去摸索,互勉。

说明:《JAVA card 应用开发》系列博文是我在学习Java卡过程中的记录,有不正确的地方。请指出。

JAVA card 应用开发(一) 创建第一个APPLET的更多相关文章

  1. JAVA card 应用开发(三) 把APPLET(CAP文件)装载到卡片

    依据前面两篇博文.我们能够在Eclipse上建立好Applet.而且能够有多个AID.能够选择不同的应用. 那么,以上我们都是基于模拟环境的逻辑,实际上有些函数接口是须要实际的环境.就是说我们须要把A ...

  2. JAVA card 应用开发(二) 在项目添加APPLET

    在上篇博文中.<JAVA card 应用开发创建第一个APPLET>.介绍了一个项目从无到有. 那么.我们建立了这个项目后,仅仅有一个应用(一个可选AID),假设我希望这个项目能够有多个应 ...

  3. “全栈2019”Java第四章:创建第一个Java程序

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  4. 第三章 Odoo 12 开发之创建第一个 Odoo 应用

    Odoo 开发通常都需要创建自己的插件模块.本文中我们将通过创建第一个应用来一步步学习如何在 Odoo 中开启和安装这个插件.我们将从基础的开发流学起,即创建和安装新插件,然后在开发迭代中更新代码来进 ...

  5. java多线程之:创建开启一个线程的开销

    ---->关于时间,创建线程使用是直接向系统申请资源的,这里调用系统函数进行分配资源的话耗时不好说.---->关于资源,Java线程的线程栈所占用的内存是在Java堆外的,所以是不受jav ...

  6. JAVA card 应用开发(六) 个人化数据的线路安全和数据安全

    卡片个人化数据的线路安全和数据安全 说明:下面理论,基于GP2.2规范. 一.线路安全 1. 概念:线路安全.就是对于数据不保密.但要保证数据的完整性和防止被篡改. 2. 方法:在原有的数据基础上.加 ...

  7. JAVA card 应用程序开发(七) JAVA 卡数据(永久数据/)时间数据

    JAVA 卡对象 JAVA CARD 存储器装置: a.      ROM: 永久保存程序和数据,虚拟机,API等待:(Applets它也可以在这里放) b.      RAM: 栈数据,暂时对象. ...

  8. 数据库面试技巧,通过JDBC展示自己专业性,摘自java web轻量级开发面试教程

    这篇文章是我之前写的博文 数据库方面的面试技巧,如何从建表方面展示自己能力 和 面试技巧,如何通过索引说数据库优化能力,内容来自Java web轻量级开发面试教程是一个系列的,通过面试官的视角和大家分 ...

  9. JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识

    JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...

随机推荐

  1. 为cloudstack搭建ceph文件系统

    1. 安装dell服务器,  raid卡需要采用直通模式(non-raid); 各磁盘独立运行.  网络依赖硬件不同,使用万兆网卡或者两个千兆网卡做bonding6.  2. 配置host map(1 ...

  2. HDU 1693 插头dp入门详解

    放题目链接   https://vjudge.net/problem/22021/origin 给出一个n*m的01矩阵,1可走0不可通过,要求走过的路可以形成一个环且可以有多个环出现,问有多少不同的 ...

  3. rsa加解密密钥生成命令

    (1)生成原始RSA私钥文件 rsa_private_key.pem(原始私钥) openssl genrsa -out rsa_private_key.pem 2048 (2)将原始RSA私钥转换为 ...

  4. net.paoding.analysis.exception.PaodingAnalysisException: dic home should not be a file, but a directory!

    Caused by: net.paoding.analysis.exception.PaodingAnalysisException: dic home should not be a file, b ...

  5. 适配器模式(Adapter Pattern)/包装器

    将一个类的接口转换成客户希望的另外一个接口.Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作. 模式中的角色 目标接口(Target):客户所期待的接口.目标可以是具体的或 ...

  6. CF910B

    题解: dp f[i][j]表示i根a,j根b要多少 然后随便转移一下 代码: #include<bits/stdc++.h> using namespace std; ][],n,a,b ...

  7. L3-010. 是否完全二叉搜索树

    L3-010. 是否完全二叉搜索树 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 将一系列给定数字顺序插入一个初始为空的二叉搜 ...

  8. PHP for循环的写法和示例

    For循环是最近的循环语句之一,无论哪种语言,都有这个循环语句,也是我们工作中常用的循环方法. 语法规则: for (expr1; expr2; expr3){ 要执行的代码 } expr1:表示循环 ...

  9. WAF的实现

    文章来源:http://danqingdani.blog.163.com/blog/static/1860941952014101723845500/ 本篇文章从WAF产品研发的角度来YY如何实现一款 ...

  10. angular 中不要使用location.href

    location.href = '#/HKorderList?gid='+gid+'&gname='+encodeURIComponent(gname)+'&cPeriod='+$(' ...