我有支持一些專有類的java卡,在包「packagename.foo」中說「ClassFoo」。我有這些類和「foo.exp」文件的文檔。但是因爲沒有它,編譯器會發現像uknown導入包和未知類這樣的錯誤,因爲我不知道構建cap文件是否需要別的東西。對?它是什麼?構建cap文件需要使用除* .exp文件之外的專有包嗎?
3
A
回答
5
offcard Java Card轉換器使用.exp
文件。轉換器將標準Java類轉換爲.cap
文件,該文件可以上傳到Java Card實現(通常通過全球平臺)。
要生成這些類文件,首先需要編譯這些類。爲此,通常的Java鏈接器需要鏈接到外部類的接口。所以vlp是正確的,你需要.class
文件進行編譯。通常這些類被打包成.jar
文件。
現在這些類的實際實現通常只在Java Card運行時上運行。鏈接使用.exp文件執行。因此,實際類的內容在鏈接過程中並不重要,它們在執行過程中也不會被使用(除非當前在jCardSim上運行)。
因此,您經常會得到一個包含所有公共接口,類和方法但不包含任何實現的.jar(除需要的地方外,還有return null
或return 0
除外)。
如果您知道完整的接口(來自Java文檔),甚至可以生成自己的存根並鏈接到該存根。
相關問題
- 1. 刪除文件之前需要fsync嗎?
- 2. hgignore:需要忽略除.lib之外的所有文件
- 3. 除了.DS_Store之外,還要獲取Documents文件夾中的所有文件嗎?
- 4. 需要node_modules之外的文件,咕嚕
- 5. 結構:包含需要的文件
- 6. 我需要使用Java + OpenGL構建Ubuntu/Debian軟件包嗎?
- 7. 需要使用sql作業刪除文件夾中除文件名中包含當前日期時間的文件以外的所有文件?
- 8. 構建XML文件需要什麼?
- 9. 構建Mercurial需要Python頭文件
- 10. 需要爲jar文件創建單獨的日誌文件嗎?
- 11. Scala文件在刪除之前需要發佈嗎?
- 12. 需要刪除大的沒有文件
- 13. 壓縮文件有額外的不需要的文件夾
- 14. 需要在我的PHP文件上阻止除我之外的所有人
- 15. 我需要json.js文件嗎?
- 16. 需要JavaScript頭文件嗎?
- 17. 在mingw主文件夾之外構建和編譯文件
- 18. 除read()之外還有什麼讀取文件的方法嗎?
- 19. 包含除index.php之外的所有PHP文件
- 20. 查找 - 除.dll.a文件之外的所有.a文件
- 21. 使用構建階段刪除文件?
- 22. 使用Python解析文件夾中除了在XML文件中鍵入的文件之外的所有文件
- 23. 除了使用.htaccess之外,我如何要求所有文件的密碼?
- 24. 爲什麼「cabal sdist」不包含所有需要構建的「文件」?
- 25. 文件需要使用liblzf
- 26. 使用POM構建硒框架並需要專家的建議
- 27. 需要使用gradle構建文件從eclipse中排除依賴關係
- 28. 您可以使用ANT構建文件作爲Phing構建文件嗎?
- 29. 如何使用所有必需的文件和文件夾構建java項目?
- 30. 創建connect.php有需要在.htx文件
你是如何編譯的?哪些工具?什麼是錯誤信息? –
@PaulBastian我編譯的東西,像'javac -classpath JAVACARD_SDK_PATH \ bin \ lib \ api.jar SRC_PATH \ test.java'。錯誤很簡單,'package packagename.foo不存在','找不到符號ClassFoo'。 – 10101010
你也應該爲這個擴展包提供一個'.jar',並將它添加到編譯器'-classpath'中(就像你已經使用的'api.jar'一樣)。或者如果你有一堆'.class'文件,你可以添加他們的頂級目錄(就像在標準的java中一樣)。這樣它應該編譯。爲了轉換爲'.cap',你需要'.exp'文件。 – vlp