Re: Swing Look And Feel for Yosemite

2014-11-11 Thread Paul Taylor

On 11/11/2014 02:02, Phil Race wrote:

On 11/10/14 9:45 AM, David DeHaven wrote:
We still use it for the occasional generic "Java 7/8/9 on Mac" 
question that comes up from time to time. It is far preferable that 
the question be posted to the more specific lists, but sometimes it 
isn't clear where that belongs. There's enough of us monitoring the 
list that we can provide guidance on where to go but not enough that 
it should be used for all Mac specific question


And, some Apple folks might be still peeking at this list in their 
free time and chime
in with useful information. But they are very unlikely to be reading 
the swing list.

Yep
Just don't take that as meaning all mac questions go here first. After 
all we don't

have a "windows port list" or an "ubuntu port list" ...

No, but Apple a special case there is alot more divergence between the 
OSX Gui, and the Windows/Linux guis. And Apple seems much more likely to 
making changes in its new OS versions that scupper us java devs.


Paul


Re: MAS codesign requirements break Java app signing

2014-11-11 Thread Jessica Finley
Zach,

Having mentioned this on the side, I’ll say it again for posterity: I bundle my 
app also using the appbundler and also have just recently been receiving that 
same email from Apple upon app submission.

Today, I finally got my app bundle to be accepted (for the first part of the 
process anyhow, it’s still pending a review from a human now).  Here’s what I 
noticed and did differently…

Looking at my fully signed app bundle, I noticed that the 
MyApp.app/Contents/PlugIns/1.8.0.jre/Contents/_CodeSignature folder contained 
different items than the MyApp.app/Contents/_CodeSignature folder.. 
particularly, it contained a CodeResources file which made me wonder if perhaps 
this was what was triggering our error (as the Apple documentation mentions not 
using the --resource-rules flag anymore, which I was never doing in the first 
place, but according to the codesign documentation, if resource rules are not 
specified, it does its best to make something up, and I’m guessing it was 
making something up for my embedded JRE bundle).

After some tinkering around, I discovered that the appbundler removes a 
particular folder, the 1.8.0.jre/Contents/MacOS folder when it stuffs the JRE 
into MyApp.app.  Well, when this folder is removed, codesign behaves much 
differently than when this folder is present.  When this folder is present, the 
MyApp.app/Contents/PlugIns/1.8.0.jre/Contents/_CodeSignature folder contains 
the same item as the MyApp.app/Contents/_CodeSignature folder.  So, after I did 
my usual bundling script, I went in and manually restored the 
MyApp.app/Contents/PlugIns/1.8.0.jre/Contents/MacOS folder, then I signed 
everything as I usually do… and surely enough, the app is accepted by 
Application Loader.

So, given that you are still struggling with javapackager, you might want to 
try this simple solution, as it might be all that you need to keep your 
existing flow working.

-Jess


On Nov 9, 2014, at 2:26 PM, Zach Oakes  wrote:

> It looks like Apple has changed its codesigning requirements for the Mac
> App Store. Thus far, I've been packaging my Java app using Oracle's
> appbundler tool and signing it with the following script:
> 
> http://pastebin.com/BtLV9bur
> 
> This worked fine even as recently as last month. This time, I get an email
> from them with the following:
> 
> Invalid code signature - Signatures created with OS X version 10.8.5 or
> earlier [v1 signatures] are obsoleted and will no longer be recognized by
> Gatekeeper beginning with OS X version 10.9.5. To ensure your apps will run
> on updated versions of OS X they must be signed on OS X version 10.9 or
> later [v2 signatures]. For more information, see OS X Code Signing In Depth
> 
> I think this error is incorrect, because I'm using 10.9.5 with the latest
> Xcode (6.1). I tried "codesign -dv MyApp.app" and it says "Sealed Resources
> version=2 rules=12 files=7", so I think I am using v2 signatures. My JDK
> version has not changed since last month (8u25), so I can rule that out.
> 
> I would appreciate any help. Thank you.
> 
> Zach




Re: MAS codesign requirements break Java app signing

2014-11-11 Thread Zach Oakes
Jessica, thank you so much. Your fix worked for me, and I wouldn't have
discovered it on my own. I'll try javapackager again when the next JDK
update comes, but this will certainly work for the time being. Thank you to
Danno, Michael, and the others as well for all the responses.

Zach

On Tue, Nov 11, 2014 at 4:44 PM, Jessica Finley 
wrote:

> Zach,
>
> Having mentioned this on the side, I'll say it again for posterity: I
> bundle my app also using the appbundler and also have just recently been
> receiving that same email from Apple upon app submission.
>
> Today, I finally got my app bundle to be accepted (for the first part of
> the process anyhow, it's still pending a review from a human now).  Here's
> what I noticed and did differently...
>
> Looking at my fully signed app bundle, I noticed that the
> MyApp.app/Contents/PlugIns/1.8.0.jre/Contents/_CodeSignature folder
> contained different items than the MyApp.app/Contents/_CodeSignature
> folder.. particularly, it contained a CodeResources file which made me
> wonder if perhaps this was what was triggering our error (as the Apple
> documentation mentions not using the --resource-rules flag anymore, which I
> was never doing in the first place, but according to the codesign
> documentation, if resource rules are not specified, it does its best to
> make something up, and I'm guessing it was making something up for my
> embedded JRE bundle).
>
> After some tinkering around, I discovered that the appbundler removes a
> particular folder, the 1.8.0.jre/Contents/MacOS folder when it stuffs the
> JRE into MyApp.app.  Well, when this folder is removed, codesign behaves
> much differently than when this folder is present.  When this folder is
> present, the MyApp.app/Contents/PlugIns/1.8.0.jre/Contents/_CodeSignature
> folder contains the same item as the MyApp.app/Contents/_CodeSignature
> folder.  So, after I did my usual bundling script, I went in and manually
> restored the MyApp.app/Contents/PlugIns/1.8.0.jre/Contents/MacOS folder,
> then I signed everything as I usually do... and surely enough, the app is
> accepted by Application Loader.
>
> So, given that you are still struggling with javapackager, you might want
> to try this simple solution, as it might be all that you need to keep your
> existing flow working.
>
> -Jess
>
>
> On Nov 9, 2014, at 2:26 PM, Zach Oakes  wrote:
>
> > It looks like Apple has changed its codesigning requirements for the Mac
> > App Store. Thus far, I've been packaging my Java app using Oracle's
> > appbundler tool and signing it with the following script:
> >
> > http://pastebin.com/BtLV9bur
> >
> > This worked fine even as recently as last month. This time, I get an
> email
> > from them with the following:
> >
> > Invalid code signature - Signatures created with OS X version 10.8.5 or
> > earlier [v1 signatures] are obsoleted and will no longer be recognized by
> > Gatekeeper beginning with OS X version 10.9.5. To ensure your apps will
> run
> > on updated versions of OS X they must be signed on OS X version 10.9 or
> > later [v2 signatures]. For more information, see OS X Code Signing In
> Depth
> >
> > I think this error is incorrect, because I'm using 10.9.5 with the latest
> > Xcode (6.1). I tried "codesign -dv MyApp.app" and it says "Sealed
> Resources
> > version=2 rules=12 files=7", so I think I am using v2 signatures. My JDK
> > version has not changed since last month (8u25), so I can rule that out.
> >
> > I would appreciate any help. Thank you.
> >
> > Zach
>
>
>