Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:Mac应用程序未使用Apple提交证书签名_Java_Macos_App Store_Code Signing_Osx Gatekeeper - Fatal编程技术网

Java:Mac应用程序未使用Apple提交证书签名

Java:Mac应用程序未使用Apple提交证书签名,java,macos,app-store,code-signing,osx-gatekeeper,Java,Macos,App Store,Code Signing,Osx Gatekeeper,我正在尝试将我的java应用程序上载到Mac应用程序商店。我一直按照这里的说明进行操作:。当然,因为我想在Mac App store上使用它,所以我用我的第三方Mac开发者应用程序:Certificate对它进行签名。最近一次我试图提交它时,苹果说该应用程序没有使用苹果提交证书签名。当我运行:'codesign-verify-vvv myapp.app'时,我得到以下结果: -准备:PathToMyApp/myapp.app/Contents/PlugIns/jdk1.8.0_31.jdk -已

我正在尝试将我的java应用程序上载到Mac应用程序商店。我一直按照这里的说明进行操作:。当然,因为我想在Mac App store上使用它,所以我用我的第三方Mac开发者应用程序:Certificate对它进行签名。最近一次我试图提交它时,苹果说该应用程序没有使用苹果提交证书签名。当我运行:'codesign-verify-vvv myapp.app'时,我得到以下结果:

-准备:PathToMyApp/myapp.app/Contents/PlugIns/jdk1.8.0_31.jdk -已验证:PathToMyApp/myapp.app/Contents/PlugIns/jdk1.8.0_31.jdk

myapp.app:在磁盘上有效

myapp.app:满足其指定要求

当我运行:“spctl-vvv-assessment-type execute myapp.app”时,我得到:

myapp.app:已拒绝

来源=第三方Mac开发者应用程序:me XXXXXXXXX

当我运行“codesign-dvvv myapp.app”时,我得到:

可执行文件=路径tomyapp/myapp.app/Contents/MacOS/myapp

标识符=myapp

格式=与Mach-O精简x86_64捆绑

CodeDirectory v=20200 size=270 flags=0x0none hashes=5+5 location=embedded

哈希类型=sha1大小=20 CDHash=2b8e4d61e30c01e5d6ac3f4a3381be2df2efa6b8

签名大小=4347

授权=第三方Mac开发者应用程序:me XXXXXXXXX

Authority=苹果全球开发者关系认证机构

权威=苹果根CA

签署时间=2015年3月3日下午1:57:39

Info.plist条目=22

团队标识符=xxxxxxxxx

密封资源版本=2规则=12文件=7

内部需求数量=1尺寸=36

同样,当我运行苹果的支票签名程序时,我得到:

测试要求:代码未能满足指定的代码要求

myapp.app:目标未使用开发者ID或Mac app Store签名。 没有

我知道苹果也会检查:

代码设计-验证-vvv-R='anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.1]存在且证书叶[field.1.2.840.113635.100.6.1.2]存在或证书叶[field.1.2.840.113635.100.6.1.4]存在'myapp.app

我得到:

-准备:PathToMyApp/myapp.app/Contents/PlugIns/jdk1.8.0_31.jdk -已验证:PathToMyApp/myapp.app/Contents/PlugIns/jdk1.8.0_31.jdk

myapp.app:在磁盘上有效

myapp.app:满足其指定要求

测试要求:代码未能满足指定的代码要求

如果我使用“开发者ID应用程序:”证书对所有内容进行签名,那么应用程序加载器会说,它必须使用“第三方Mac开发者”证书进行签名,而不是使用v1签名进行签名。我已经为此工作了将近一周,但没有成功

我做错了什么


-另外,如果有帮助的话,我会在Yosemite 10.10.2上将该应用程序与Netbeans内置的本机packager捆绑在一起。我尝试过Appbundler和其他一些应用程序,但也没有取得多大成功。

问题可能是您需要提交应用程序,而不仅仅是应用程序,而是将其包装在安装程序中。查看这篇博文:我用productbuild打包了它,但当我上传到苹果时,他们会将其解压缩并在.app上运行测试