2016-07-28 59 views
1
When I build my application I get following errors. Can you please let me know how to resolve it. My application needs to be supported on all platforms (Andriod, IOS, windows) and I don't want to write native code for all platforms separately. 

java:4: error: package java.lang.reflect does not exist 
     import java.lang.reflect.UndeclaredThrowableException; 
java:6: error: package javax.crypto does not exist 
     import javax.crypto.Mac; 
      ^
7: error: package javax.crypto.spec does not exist 
     import javax.crypto.spec.SecretKeySpec; 
java:48: error: cannot find symbol Mac hmac; 
50: error: cannot find symbol 
     [javac]    hmac = Mac.getInstance(crypto); 

^ 的java期间查找包:53:错误:找不到符号 [javac的] SecretKeySpec麦基= ^ [javac的]符号:类SecretKeySpec [javac的]的位置:类TokenGenerator java:55:error:can not find symbol [javac] new SecretKeySpec(keyBytes,“RAW”); ^ [javac的]符号:类SecretKeySpec [javac的]的位置:类TokenGenerator 的java:61:错误:找不到符号 [javac的]}赶上(GeneralSecurityException GSE){ [javac的]^ 的java:63:错误:找不到符号 [javac] throw new UndeclaredThrowableException(gse); 为[javac]^ 符号:类UndeclaredThrowableException中 [javac的]位置:类TokenGeneratorCodenameone:无法构建

回答

1

这些软件包不被一个代号支持。反射不能在设备上以高性能的方式实现,不应该一般性地使用,因为它与混淆相冲突,这是移动设备推荐的最佳实践。

加密是一个大型的过度设计的包,具有导出限制和反射依赖关系。我们有一个用于充气城堡的cn1lib扩展。

+0

我应该在哪里得到cn1lib。它对我有用吗? –

+1

在Codename One的扩展部分下设置 –

+0

仍然不起作用 –