Tag: manifest

OSGI Bundle-NativeCode给出错误“找不到本机代码的匹配”

我正在开发一个使用本机库librxtxSerial的OSGI包。 第一次,我不得不在树莓上部署这个包,所以我做了类似的事情: 我把本机库放在:lib / librxtxSerial.so(NB:INSIDE java项目)。 然后,在MANIFEST我写道: Bundle-NativeCode: lib/librxtxSerial.so 一切正常!!! 现在,问题是我要在使用不同处理器架构的其他嵌入式设备上部署相同的捆绑包(x86而不是ARM)。 所以,我已经下载了librxtxSerial库的x86版本,并修改了我的文件夹结构: – lib – x86 – librxtxSerial.so – arm – librxtxSerial.so 我用这种方式修改了我的MANIFEST: Bundle-NativeCode: lib/x86/librxtxSerial;processor=x86, lib/arm/librxtxSerial;processor=ARM_le 尝试编译(通过maven tycho插件)我总是得到同样的错误: No match found for native code: lib/x86/librxtxSerial; processor=x86, lib/arm/librxtxSerial; processor=ARM_le 我怎么解决这个问题?

如何让android操作栏返回按钮返回片段

大家好,我已经在我的应用程序的操作栏中实现了一个后退按钮,但我不知道如何从一个活动返回到片段或片段到片段。 所以,如果有人能告诉我如何从一个活动返回到一个片段甚至一个片段到另一个片段,这将是惊人的。 这是我现在的代码 public class Article extends Activity{ private WebView webview; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.articleview); // etc… getActionBar().setDisplayHomeAsUpEnabled(true); Bundle b = getIntent().getExtras(); String KEY_LINK = b.getString(“b”); String url = getIntent().getStringExtra(“key”); WebView myWebView = (WebView) findViewById(R.id.webView); WebSettings webSettings = myWebView.getSettings(); webSettings.setJavaScriptEnabled(true); myWebView.loadUrl(url); myWebView.loadUrl(KEY_LINK); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) […]

Java Applet安全警告“JAR文件清单不包含Permissions属性”是什么意思?

我有一个Java Applet,需要访问客户端的本地文件系统。 我为自己创建了一个简单的证书(它未经Verisign,Commodo认证,……)。 我使用以下模板签署了jar: del \Users\koalabruder\.keystore “C:\Program Files\Java\jdk1.7.0_45\bin\keytool” -genkey -alias %1 -keypass kp -dname “cn=inin” -storepass ab987c “C:\Program Files\Java\jdk1.7.0_45\bin\jarsigner.exe” -storepass abc -keypass kp %2 %1 “C:\Program Files\Java\jdk1.7.0_45\bin\keytool” -export -storepass abc -alias %1 -file %3 我有“没有签名证书”的简单安全警告已存在多年,并不是我的问题。 我的问题是,安全警告因最后一次Java更新而改变: 此应用程序将在未来的Java安全更新中被阻止,因为JAR文件清单不包含Permissions属性。 请联系发布者以获取更多信息。 这是什么意思? 我该如何解决? 我必须购买证书吗? 我是否必须修复Manifest(MANIFEST.MF)? 什么是Permission属性? 更新:这是我的jar文件中的清单 Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Application-Name: inin Permissions: all-permissions Created-By: […]

如何在没有安全警告的情况下发布Java Web Start jnlp应用程序?

我有一个从网站的jnlp文件启动的Java应用程序。 我试图让它运行而不会在它运行之前闪烁一堆安全警告。 该程序分为大约10个不同的jar文件,30个左右的jar库,以及jar文件中还包含的几个本机库。 我已经使用官方代码签名证书(来自Verisign)签署了所有jar文件,包含了保存主类的jar文件中的jnlp文件,并将权限和代码库属性添加到我正在使用的主要10个jar子中编译。 当我启动程序时,我收到消息说明: 此应用程序将在未来的Java安全更新中被阻止,因为JAR文件清单不包含Permissions属性。 请联系发布者以获取更多信息。 我可以单击“运行”以通过此消息,但随后我得到: 阻止可能不安全的组件运行? 该应用程序包含签名和未签名的代码。 我已将permissions属性添加到我正在编译的所有jar文件中。 我是否必须更新我正在使用的第三方库的jar清单? 如果是这样,有没有一种简单的方法可以做到这一点? 我正在使用Apache Ant来构建应用程序。

动画GIF导致SplashScreen为空

我知道这可能接近这个post的重复: Splashscreen中的动画GIF 但是,因为它似乎没有答案,我无法评论它或任何我很抱歉重新发布这个,但如果有人能给我一个答案,那将是很棒的。 我正在制作游戏,这个游戏需要花费很多时间才能开始。 因此,我想在加载屏幕期间给用户反馈,以便他知道应用程序没有崩溃。 这就是我使用java 7中的SplashScreen API的原因。 在eclipse中,当我在VM Arguments中使用以下配置运行我的应用程序时, SplashScreen.getSplashScreen()返回null 。 -splash:src/aapplication/Splash.gif 但是当我使用这个配置时,它工作正常(我必须在同一个包中的文件,一个是Splash.png和另一个Splash.gif ): -splash:src/aapplication/Splash.png 在jar文件中(在MANIFEST.MF ),这不起作用: SplashScreen-Image: aapplication/Splash.gif 虽然这样做: SplashScreen-Image: aapplication/Splash.png 我的GIF大小约为1Mb,而PNG大约为50kb。 任何人都可以向我解释为什么在PNG的情况下甚至无法加载GIF(我知道它不是路径,因为它们有相同的)? 我看到的每个地方都说它应该和PNG一样好用。 谢谢你的帮助!

将log4.properties类路径放入的问题

我在将log4j.properties文件放在classpath上时遇到了一些问题。 我可以在开发时使用它(Eclipse Indigo)但是,当我将我的应用程序导出为JAR时,我不能。 我已经为导出的JAR手工制作了一个MANIFEST.MF文件: Manifest-Version: 1.0 Main-Class: main.Program Class-Path: lib/log4j.properties lib/log4j-1.2.15.jar 然后将JAR放在此文件组织上: folder |——– app.jar |——– lib |——— log4j.properties |——— log4j-1.2.15.jar 当我尝试运行app.jar时,他们找到log4j.jar但不是log4j.properties: log4j:WARN No appenders could be found for logger (main.Program). log4j:WARN Please initialize the log4j system properly. 我的log4j.properties文件是这样的: log4j.rootLogger=INFO, stdout, file PATTERN=[%d] [%p] [%c{1}]: %m%n log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=${PATTERN} log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.appender.file.DatePattern=’.’yyyy-MM-dd log4j.appender.file.File=${logger_file_path} log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=${PATTERN}