简体   繁体   English

如何将JavaCard程序包添加到JavaCard小程序?

[英]How to add JavaCard packages to JavaCard applet?

I am trying to build a simple Hello world JavaCard applet.I am using NetBeans IDE. 我正在尝试构建一个简单的Hello world JavaCard小程序。我正在使用NetBeans IDE。

I am following this tutorial. 我正在关注本教程。

Here is my code: 这是我的代码:

package classicapplet1;

import javacard.framework.*;
import java.rmi.Remote;
import javacard.framework.service.Dispatcher;
import javacard.framework.service.RMIService;
import javacard.framework.service.Service;

public class JavaCardApplet extends Applet  {

    HelloWorld hello;
    Dispatcher disp;
    Service svc;

    public static void install(byte[] bArray, short bOffset, byte bLength) {
        new JavaCardApplet();
    }

    private JavaCardApplet() {
       // register();

        hello = new HelloWorld();
        svc=new RMIService((Remote) hello);
        disp = new Dispatcher((short)1);
        disp.addService(svc, Dispatcher.PROCESS_COMMAND);
    }

    public static void install(byte[] buf, short ofs, short len){

        (new JavaCardApplet()).register();
    }

    public void process(APDU apdu) {
        //Insert your code here
     disp.process(apdu);
    }
}

The IDE doesnt show any error or warning on the editor, but WHen I try to build the code: The foloowing things display in the debug console: IDE不会在编辑器上显示任何错误或警告,但是,我尝试构建代码:调试控制台中显示了以下内容:

 ant -f "C:\\Users\\Tera\\Documents\\NetBeansProjects\\JavaCardApplet" run
    __reset_for_debug__:
    init-platform-properties:
    Using JavaCard Platform Definition at C:\Users\Tera\AppData\Roaming\NetBeans\8.1\config\Services\Platforms\org-netbeans-api-java-Platform\javacard_default.jcplatform

    Java Card Home is C:\Program Files\NetBeans 8.1\javacard\JCDK3.0.2_ConnectedEdition (Java Card Platform)

    init-ri-properties:
    init-device-properties:
    Platform device property name is jcplatform.javacard_default.devicespath

    Computed device folder path is C:\Users\Tera\AppData\Roaming\NetBeans\8.1\config\org-netbeans-modules-javacard\servers\javacard_default

    Platform device file path property name is C:\Users\Tera\AppData\Roaming\NetBeans\8.1\config\org-netbeans-modules-javacard\servers\javacard_default\Default Device.jcard

    Deploying to device Default Device http port 8019
    init-keystore:
    Keystore is C:\Program Files\NetBeans 8.1\javacard\JCDK3.0.2_ConnectedEdition/samples/keystore/a.keystore
    build-dependencies:
    unpack-dependencies:
    compile:
    Compiling 2 source files to 

C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\build\APPLET-INF\classes


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:11: error: package javacard.framework.service does not exist
    import javacard.framework.service.Dispatcher;


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:12: error: package javacard.framework.service does not exist
    import javacard.framework.service.RMIService;


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:13: error: package javacard.framework.service does not exist
    import javacard.framework.service.Service;


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:22: error: cannot find symbol
        Dispatcher disp;
      symbol:   class Dispatcher
      location: class JavaCardApplet


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:23: error: cannot find symbol
        Service svc;
      symbol:   class Service
      location: class JavaCardApplet


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:48: error: cannot find symbol
            svc=new RMIService((Remote) hello);
      symbol:   class RMIService
      location: class JavaCardApplet


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:49: error: cannot find symbol
            disp = new Dispatcher((short)1);
      symbol:   class Dispatcher
      location: class JavaCardApplet


C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\src\classicapplet1\JavaCardApplet.java:50: error: cannot find symbol
            disp.addService(svc, Dispatcher.PROCESS_COMMAND);
      symbol:   variable Dispatcher
      location: class JavaCardApplet
    8 errors
    C:\Users\Tera\Documents\NetBeansProjects\JavaCardApplet\nbproject\build-impl.xml:301: Compile failed; see the compiler error output for details.
    BUILD FAILED (total time: 1 second)

Note :NetBEans IDE has the JavaCard Plugin Installed. 注意 :NetBEans IDE已安装JavaCard插件。

Add the api_classic.jar library and its export path to the libraries of your project manually. 手动将api_classic.jar库及其导出路径添加到项目的库中。 This file is exist under this path: 该文件位于以下路径下:

<NetbeansInstalledDirectory>\\javacard\\JCDK3.0.2_ConnectedEdition\\lib

Step by step for beginners: 初学者循序渐进:

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

And now, try to build it again. 现在,尝试再次构建它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM