Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

tput

57
Posts
3
Followers
1
Following
A member registered May 04, 2018

Recent community posts

(1 edit)

The underlying executable cannot execute because the execute bit isn't set. It's location is /path/to/SomeApp.app/Contents/MacOS/executable

1. Open Terminal
2. Copy code below, paste with Terminal in focus, hit enter / return key

printf "\nSelect the application that cannot open\n\n"; a="$(osascript -e 'POSIX path of (choose file default location (path to downloads folder) of type "APPL" with prompt "Select the application that cannot open")')"; if [[ $? -eq 0 ]]; then printf "(Re)Applying the execution permission to executable files..."; while read f; do if [[ "$(file -b "$f")" =~ "Mach-O 64-bit executable x86_64" ]]; then chmod +x "$f"; fi; done < <(find "$a"); if [[ $? -eq 0 ]]; then printf "done\n"; printf "\nRemoving extended attribute com.apple.quarantine from app..."; if [[ "$(xattr "$a")" =~ "com.apple.quarantine" ]]; then xattr -r -d com.apple.quarantine "$a"; printf "done\n"; else printf "already removed\n"; fi; printf "\nPlease wait until application launches..."; open "$a"; printf "done\n"; fi; fi; printf "\n"

(1 edit)

The underlying executable cannot execute because the execute bit isn't set. It's location is /path/to/SomeApp.app/Contents/MacOS/executable

1. Open Terminal
2. Copy code below, paste with Terminal in focus, hit enter / return key

printf "\nSelect the application that cannot open\n\n"; a="$(osascript -e 'POSIX path of (choose file default location (path to downloads folder) of type "APPL" with prompt "Select the application that cannot open")')"; if [[ $? -eq 0 ]]; then printf "(Re)Applying the execution permission to executable files..."; while read f; do if [[ "$(file -b "$f")" =~ "Mach-O 64-bit executable x86_64" ]]; then chmod +x "$f"; fi; done < <(find "$a"); if [[ $? -eq 0 ]]; then printf "done\n"; printf "\nRemoving extended attribute com.apple.quarantine from app..."; if [[ "$(xattr "$a")" =~ "com.apple.quarantine" ]]; then xattr -r -d com.apple.quarantine "$a"; printf "done\n"; else printf "already removed\n"; fi; printf "\nPlease wait until application launches..."; open "$a"; printf "done\n"; fi; fi; printf "\n"

(1 edit)

Binary files can make it on your machine without the execute permission. It's the underlying executable that launches the application. It's location is within /path/to/SomeApp.app/Contents/MacOS/executable. Without the execute permission to execute it, it won't execute. The fix on your end is to launch the Terminal application, type the chmod command / program with options that reflect you want to append the execute flag, in addition to the path to the file to make those changes on

You can use 1 of 2 code snippets to do this part automatically
https://itch.io/post/4300285

The Mac build runs after applying the execute permission to the internal executable, however you cannot save without

"Did not properly load asset in advance: ui/character/X Up.png
Did not properly load asset in advance: ui/character/X Down.png
Did not properly load asset in advance: ui/character/X Hover.png
Did not properly load asset in advance: ui/character/Tooltip Small.png
Did not properly load asset in advance: ui/save/Quicksave Up.png
Did not properly load asset in advance: ui/save/Empty Slot.png"

Hitting that X icon, crashes the game

C  [libobjc.A.dylib+0x681d]  objc_msgSend+0x1d
j  org.lwjgl.system.JNI.invokePPV(JJJ)V+0
j  org.lwjgl.glfw.GLFW.glfwSetCursor(JJ)V+20
j  com.badlogic.gdx.backends.lwjgl3.Lwjgl3Graphics.setCursor(Lcom/badlogic/gdx/graphics/Cursor;)V+14
J 2989 c1 com.majalis.screens.AbstractScreen.render(F)V (111 bytes) @ 0x0000000118e06ba4 [0x0000000118e06680+0x0000000000000524]
j  com.majalis.screens.SaveScreen.render(F)V+2
j  com.majalis.screens.AbstractScreen.renderSubScreens(F)V+29
j  com.majalis.screens.EncounterScreen.render(F)V+76
j  com.badlogic.gdx.Game.render()V+19
j  com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update()Z+187
j  com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop()V+111
j  com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lcom/badlogic/gdx/ApplicationListener;Lcom/badlogic/gdx/backends/lwjgl3/Lwjgl3ApplicationConfiguration;)V+243
j  com.majalis.talesofandrogyny.desktop.DesktopLauncher.main([Ljava/lang/String;)V+48
v  ~StubRoutines::call_stub
V  [libjvm.dylib+0x3b910e]  _ZN9JavaCalls11call_helperEP9JavaValueRK12methodHandleP17JavaCallArgumentsP6Thread+0x21a
V  [libjvm.dylib+0x3fe303]  _ZL17jni_invoke_staticP7JNIEnv_P9JavaValueP8_jobject11JNICallTypeP10_jmethodIDP18JNI_ArgumentPusherP6Thread+0x10a
V  [libjvm.dylib+0x401dcb]  jni_CallStaticVoidMethodV+0x14c
C  [TalesOfAndrogyny+0xc536]  _ZN7JNIEnv_20CallStaticVoidMethodEP7_jclassP10_jmethodIDz+0x86
C  [TalesOfAndrogyny+0xb750]  _ZNSt3__110__function6__funcIZ12launchJavaVME3$_0NS_9allocatorIS2_EEFPvS5_EEclEOS5_+0x16b0
C  [TalesOfAndrogyny+0xe145]  _ZNSt3__110__function6__funcIZ4mainE3$_0NS_9allocatorIS2_EEFvNS_8functionIFPvS6_EEERK14JavaVMInitArgsEEclEOS8_SB_+0x175
C  [TalesOfAndrogyny+0x3685]  launchJavaVM+0x1305
C  [TalesOfAndrogyny+0xd622]  main+0x42
C  [libdyld.dylib+0x1acc9]  start+0x1

Using the Escape key instead leads to this

java.lang.RuntimeException: Actor: Group
|  Group
|  Group
at com.badlogic.gdx.scenes.scene2d.Actor.act(Actor.java:110)
at com.badlogic.gdx.scenes.scene2d.Group.act(Group.java:47)
at com.badlogic.gdx.scenes.scene2d.Stage.act(Stage.java:226)
at com.majalis.screens.AbstractScreen.render(AbstractScreen.java:489)
at com.majalis.screens.EncounterScreen.render(EncounterScreen.java:132)
at com.badlogic.gdx.Game.render(Game.java:46)
at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)
at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)
at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)
at com.majalis.talesofandrogyny.desktop.DesktopLauncher.main(DesktopLauncher.java:39)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Pixmap already disposed!
at com.badlogic.gdx.graphics.Pixmap.dispose(Pixmap.java:370)
at com.badlogic.gdx.graphics.g2d.PixmapPacker$Page$1.dispose(PixmapPacker.java:507)
at com.badlogic.gdx.graphics.g2d.BitmapFont.dispose(BitmapFont.java:320)
at com.majalis.screens.ScreenElements.dispose(ScreenElements.java:43)
at com.majalis.screens.AbstractScreen.dispose(AbstractScreen.java:523)
at com.majalis.screens.AbstractScreen.switchScreen(AbstractScreen.java:150)
at com.majalis.screens.AbstractScreen$1.act(AbstractScreen.java:93)
at com.badlogic.gdx.scenes.scene2d.actions.SequenceAction.act(SequenceAction.java:65)
at com.badlogic.gdx.scenes.scene2d.Actor.act(Actor.java:98)
... 9 more

Load from the main menu instead outputs

"Did not properly load asset in advance: ui/save/Quicksave Up.png
Did not properly load asset in advance: ui/save/Empty Slot.png"

Clicking Escape works, but loading again or rather hitting the X icon instead of using Escape key, crashes the game

Same for options, except

"Did not properly load asset in advance: sounds/Click2.wav
Did not properly load asset in advance: ui/option/Bar.png
Did not properly load asset in advance: ui/option/Dongle.png"

Hitting options again after the Escape key, causes this

"Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSTaggedDate set]: unrecognized selector sent to instance"

(26 edits)

Using the Mac option (not the .jar one)
If you need a *.rar extractor, use this -> https://www.keka.io/en/

This part applies the execute bit to the internal executable files (instead of fixing them manually and possibly more than one of them...), and will try to launch the application automatically
1. Open the Terminal application (search under Spotlight, under Launchpad, or under Finder go to Applications -> Utilities)
2. Refer to the following link (ignore the jre part, rather only which code to use) -> https://itch.io/post/4300285 (don't forget to bring Terminal to the foreground before you paste)

Wait, it's having issues like "Did not properly load asset in advance" and "A fatal error has been detected by the Java Runtime Environment"

(5 edits)

Copy pasted from my other posts, just use one of these. You literally just copy below the bold, paste it in Terminal, and hit the enter key. The order doesn’t matter. Also a heads up, a choose dialog will pop up... The purpose is to tell the code what to fix by you selecting the application to work on (the one that fails to run). This means it’s going to be the first thing you do in order to figure out what’s wrong with the application (preparations), but because we know what's wrong with it (the jre), either order would work

  • DL via link and the remaining steps that takes care of replacing the jre
  • Run one of the two code below

The long version (walk you through some things):

clear; printf "\nYou only need to run this just once. If the app launches correctly, you can just double click / launch the app now\n\nThis will give executables within the app directory the execution permission via chmod command. Afterwards this will remove the extended attribute com.apple.quarantine from a new app that keeps it from opening automatically (prevents you from opening it)\n\nIf the app doesn't launch, you can check inside an application by right clicking it > Show Package Contents, open Contents, open MacOS, drag the executable file into a Terminal window, and hit enter. If there are multiple files go back to the Contents directory (you can use Command + Up Arrow and Command + Down Arrow to go up and down directories), select Info.plist, remind yourself the string value after CFBundleExecutable, then use the spacebar on the selected item to toggle Quicklook. The string value after CFBundleExecutable is the name of the file inside the MacOS folder you want to drag into a Terminal window and enter. Running the executable under Terminal can output information when the app fails to run correctly\n\nHit the enter / return key when ready"; read; printf "\nSelect the application that cannot open\n\n"; a="$(osascript -e 'POSIX path of (choose file default location (path to downloads folder) of type "APPL" with prompt "Select the application that cannot open")')"; if [[ $? -eq 0 ]]; then printf "(Re)Applying the execution permission to executable files..."; while read f; do if [[ "$(file -b "$f")" =~ "Mach-O 64-bit executable x86_64" ]]; then chmod +x "$f"; fi; done < <(find "$a"); if [[ $? -eq 0 ]]; then printf "done\n"; printf "\nRemoving extended attribute com.apple.quarantine from app..."; if [[ "$(xattr "$a")" =~ "com.apple.quarantine" ]]; then xattr -r -d com.apple.quarantine "$a"; printf "done\n"; else printf "already removed\n"; fi; printf "\nPlease wait until application launches..."; open "$a"; printf "done\n"; fi; fi; printf "\n"

The short version (just run but without the helpful info):

printf "\nSelect the application that cannot open\n\n"; a="$(osascript -e 'POSIX path of (choose file default location (path to downloads folder) of type "APPL" with prompt "Select the application that cannot open")')"; if [[ $? -eq 0 ]]; then printf "(Re)Applying the execution permission to executable files..."; while read f; do if [[ "$(file -b "$f")" =~ "Mach-O 64-bit executable x86_64" ]]; then chmod +x "$f"; fi; done < <(find "$a"); if [[ $? -eq 0 ]]; then printf "done\n"; printf "\nRemoving extended attribute com.apple.quarantine from app..."; if [[ "$(xattr "$a")" =~ "com.apple.quarantine" ]]; then xattr -r -d com.apple.quarantine "$a"; printf "done\n"; else printf "already removed\n"; fi; printf "\nPlease wait until application launches..."; open "$a"; printf "done\n"; fi; fi; printf "\n"

Not sure about JDK cause the resolution crash, but
https://itch.io/t/1069538/doesnt-work-on-mac

(1 edit)

Yeah I have no idea what you're doing (errors and all that), but try this
https://itch.io/t/1069538/doesnt-work-on-mac

https://itch.io/post/2631810

(11 edits)

The application cannot open due to missing (the execution flag) permissions (Windows has its own permissions which overrides any existing Unix permissions). In other words, the internal executable file(s) are no longer seen as an executable

First make sure the jre is compatible with your OS (last time I checked it's the Windows variant) via here (click download and do 6-12), afterwards run this in the Terminal application aka select code -> copy code -> click on Terminal app or window -> paste -> hit enter key (unless you took the manual approach which in that case you can ignore this part)

printf "\nSelect the application that cannot open\n\n"; a="$(osascript -e 'POSIX path of (choose file default location (path to downloads folder) of type "APPL" with prompt "Select the application that cannot open")')"; if [[ $? -eq 0 ]]; then printf "(Re)Applying the execution permission to executable files..."; while read f; do if [[ "$(file -b "$f")" =~ "Mach-O 64-bit executable x86_64" ]]; then chmod +x "$f"; fi; done < <(find "$a"); if [[ $? -eq 0 ]]; then printf "done\n"; printf "\nRemoving extended attribute com.apple.quarantine from app..."; if [[ "$(xattr "$a")" =~ "com.apple.quarantine" ]]; then xattr -r -d com.apple.quarantine "$a"; printf "done\n"; else printf "already removed\n"; fi; printf "\nPlease wait until application launches..."; open "$a"; printf "done\n"; fi; fi; printf "\n"

(1 edit)

Yeah the jre that comes with all versions of the game is the Windows version which is why you have replace it  for your OS (I found that out later lol based on the files ending will .dll and .exe). Also I don't think that version is necessary, it's just the first one that worked for me, so I'm sure newer versions work the same?

Operating System?

(1 edit)

Can you do a build for Mac? Just a heads up in case you do, newer Macs force a 16:10 resolution

So finally got to test this, and it only does this when you run the jar file using the built-in jdk of macOS aka it's a problem with the jdk. Using a macOS version of jre (8u221) in the *.app/Contents/Resources folder did not crash it when toggling fullscreen. Turns out the jre inside the app is the Windows version which is why you have to replace it to make it work

Here's how to fix the Mac build
https://itch.io/t/1069538/doesnt-work-on-mac

Do you get any output from Terminal when executing the path to the executable?

(3 edits)

Does 8u271 help?
https://javadl.oracle.com/webapps/download/AutoDL?BundleId=243729_61ae65e088624f...

How about 8u281?
https://javadl.oracle.com/webapps/download/AutoDL?BundleId=244060_89d678f2be1647...

Yeah so this might be a JRE issue prior to 2.4 so seeing if this would fix your problem, meaning replacing your internal jre folder again. If so, I'll update the link

(3 edits)

In the link of my previous post, I mentioned that apps "Can't be opened" if the executable inside the *.app/Contents/MacOS/ folder does not have the execute bit set. You need to open the application "Terminal" (use Command + Spacebar to toggle Spotlight and search "Terminal") and copy paste this (click return / enter after you pasted)

printf "\nSelect the application that cannot open\n\n"; a="$(osascript -e 'POSIX path of (choose file default location (path to downloads folder) of type "APPL" with prompt "Select the application that cannot open")')"; if [[ $? -eq 0 ]]; then printf "(Re)Applying the execution permission to executable files..."; while read f; do if [[ "$(file -b "$f")" =~ "Mach-O 64-bit executable x86_64" ]]; then chmod +x "$f"; fi; done < <(find "$a"); if [[ $? -eq 0 ]]; then printf "done\n"; printf "\nRemoving extended attribute com.apple.quarantine from app..."; if [[ "$(xattr "$a")" =~ "com.apple.quarantine" ]]; then xattr -r -d com.apple.quarantine "$a"; printf "done\n"; else printf "already removed\n"; fi; printf "\nPlease wait until application launches..."; open "$a"; printf "done\n"; fi; fi; printf "\n"

Oh right, I forgot this isn't going to open right unless you replaced the internal jre folder beforehand

If you replaced the internal jre folder inside the app, running the jar would be a 50/50 that it either works or not from what I tested. Did you run the chmod command?
https://itch.io/t/1069538/doesnt-work-on-mac

Try moving the app to the applications folder. Issue might be the extended attribute com.apple.quarantine

?

https://itch.io/t/1069538/doesnt-work-on-mac

Oh hey lol, so for this app the internal jre folder is messed up

https://itch.io/t/1069538/doesnt-work-on-mac

Click the DL link and do 6-12

I wonder if it's the extended attribute com.apple.quarantine

What if you move the app to the applications folder?

(5 edits)

Umm, what is happening? Did you apply the execute flag via chmod command and replace the internal jre folder with a new one? MacOS version? Right click on the app, "Show Package Contents", open Contents folder, open MacOS folder, in your Dock on the left is Finder, on the right of it is Launchpad, once you click on that, search  for "Terminal" until you see the Terminal application and click on it. In Finder, drag the file inside the (opened) MacOS folder in the Terminal window, and with Terminal active (in the foreground aka click on the Terminal window or click on the app in the Dock) then hit the enter / return key. Any errors?

(10 edits)

Check your log file @ ~/Library/Logs/Unity/Player.log

Click Finder in the Dock (bottom tray of apps, the first item on the left) to make Finder active, then in the menu bar (where you find in the Apple logo in the top-left corner), click on the menu item "Go", then at the bottom of that click "Go To Folder...", enter in 

~/Library/Logs/Unity/Player.log

in the dialog, click Go, and open Player.log

Can't be opened = *.app/Contents/MacOS/executable is missing the execute permission (Windows doesn't know how to interpret Unix permissions)
Issue with jar file = jre is incomplete via the message you get from Terminal

https://itch.io/t/1069538/doesnt-work-on-mac

(1 edit)

You shouldn't need a Mac. What I mean is there are some devs that don't test the Mac / Linux build, but can be launched just fine (eh well the Mac at least, not entirely sure about Linux but you can run that like another bootable OS whether as a partition or off a flash drive aka slow IO speeds) regardless if the dev even fixes those issues like replacing the internal jre folder from within the app with the Home folder (rename Home to jre) of a downloaded "Java SE Runtime Environment" or removing the extended attribute com.apple.quarantine from a "damaged" app via Terminal command. With Unity, you shouldn't have worry about this because the Unity devs are always updating the compatibility side of things and more, for instance building an Xcode project (yeah for the Mac build do not check this option) for you (they have done as much automation as possible, so regardless where you build from, cross-platform is pretty much taken care of). Especially when you get stderr / log file, it makes it closer than ever getting something to work. The only difficult part (something I never tried before) is reverse engineer a file to make it work (I'm pretty sure it's possible), like find out where the error lies and patch it yourself (through hex editing / assembly language?). I also have Unity too, so I might be able to help with translating things (trying out new things with Unity instead of figuring how to deal with multi-sided collisions through various ideas lol). I only said don't worry because I typically do this anyway (if the app doesn't work, I'll look into it, unless you want to?)

(17 edits)

What about Mac / Linux? Don't worry about running the Mac / Linux build, coming off a Windows machine, it's most likely going to be as simple as us (the Mac / Linux users) to open up Terminal and run 1 command (has to do with setting the Unix permissions that Windows doesn't understand) and possibly another lol (worth a shot regardless in case it does eventually work). Also as a heads up, to support macOS 10.15+ they force a 16:10 ratio (just found this out from another dev recently). Any other problems, and I'll look into it

(3 edits)

Have you replaced the jre folder?
https://itch.io/t/1069538/doesnt-work-on-mac

You can activate otherwise deactivate spotlight by holding the Command key and hitting the spacebar (space key). Alternatively you can click the magnifying glass in the menu bar (the bar at the top edge of your screen). With it active, typing letter by letter "terminal" you can hit the return key when your search "Terminal" is selected or double click the one not selected. You can click the launchpad item in your dock (the tray full of apps at the bottom of your screen) and type letter by letter "terminal" and click on it. In Finder you can do Command + Shift + U to show the Utilities folder which is where the Terminal app is and double click on it (in the menu bar at the very top click the item "Go" to see the other shortcuts). Having a Finder window open you can click on the sidebar item on the left called "Applications", then scroll to Utilities, double click it, and then Terminal. Really all you need to run this app is to delete the extended attribute "com.apple.quarantine" from the app

xattr -d com.apple.quarantine <after the space drag app in the Terminal window then return key>

Though he made it a bit simpler just using the c flag to clear all extended attributes instead of specifying an extended attribute to delete, but used the r flag to apply that recursively (everything inside the app directory as well). Sometimes you may need these options to save some time but personally I wouldn't use "-cr" together unless you need to

The problem, however, is with how many of these executables coming off of Windows machines that doesn't know anything about Unix permissions, so you often have to apply it yourself with the Terminal command

chmod +x /path/to/executable

Where the executable for Mac lives inside the *.app/Contents/MacOS/ folder. If you right click a Mac application, you can go inside it (it's actually just a directory / folder) by selecting "Show Package Contents". When you double click / open a Mac application you are executing that executable file (*.app/Contents/MacOS/executable). Without the execute permission to that executable, Finder will just say "Application can't be opened" and Terminal will say "Permission denied" when you run it within Terminal (how can you can execute something if there is no permission to execute it?). You can execute executables in Terminal just by specifying the path to it, and hit the return key. The benefit about doing it within Terminal is to display information on why it failed

(3 edits)

Nevermind you still need to replace the jre to get the app to work. The new Mac build fixes the "DesktopLauncher quit" problem so you can run the jar (though the jar method seems to be a 50/50, not sure if I'm not waiting long enough or if it's something else), but didn't fix the app crashing instantly. My previous post has the link to fix these issues or here

(2 edits)

Try the current build and if it still says that then

Download the "Java SE Runtime Environment 8u221" for your system
https://gist.github.com/wavezhang/ba8425f24a968ec9b2a8619d7c2d86a6#gistcomment-3...

1. Extract it
2. Inside, find and rename the Home folder to jre
3. Go to the game files and find the existing jre folder
4. Either rename it or delete it but the existing jre folder needs replaced

(1 edit)

I'm probably going to continue to edit it (in case you copied it to a text file or something) for instance I changed the "$(file -b /path/to/something)" part to see if the output contains "Mach-O 64-bit executable x86_64" rather than exactly "Mach-O 64-bit executable x86_64" in case of an executable being universal (this means so the chmod part runs in order to set the execute permission on the executable)

(4 edits)

Mac apps commonly don't work because the SomeApp.app/Contents/MacOS/SomeExecutable doesn't have the execute permission set , but even so it wouldn't run because the jre needed replaced. Also the current build fixes the DesktopLauncher quit problem though you still need to replace the jre to get the app to not crash instantly (because of the jre issue), but again can't execute an executable if it doesn't have the execute permission which is why I made a helper script that you can just copy (it's in my posts)

(1 edit)

You can't execute an executable if the permission to execute it isn't set. You can have a simple command to enter in Terminal (chmod +x /path/to/NameOfApp.app/Contents/MacOS/NameOfExecutable) or check out my helper script that just does stuff just to get it to run. Though for this app, you also need to replace the jre

(2 edits)

The current build fixes the DesktopLauncher issue, but likewise for the Mac apps you get, you might need to fix permission to the executable under *.app/Contents/MacOS/. My recent post was a helper script that does this. Also to get this app to work you need to replace the jre

(1 edit)

This is pretty common when distributing Mac apps. I made posts about fixing this , my recent one was a helper script that you can just run for any app which will attempt to start the app as soon as possible (part of the script talks about one more method). Though for this app you need to also replace the jre folder

(4 edits)

Try the current build. Previously you had to replace the jre folder inside the app's Contents/Resources folder with a downloaded jre (I made a post on this along with setting the execute permission the app's executable in order to launch it). To get the app to work you still need to replace the jre but the recent Mac build did fix the "DesktopLauncher quit" issue when double clicking the jar file but it doesn't seem to be work consistently (not sure why though)

(7 edits)

Mac apps will complain they "Can't be opened" likewise "Permission denied" via running the executable under Terminal when the *.app/Contents/MacOS/executable doesn't have the execution permission set. You can try out my post about a helper script that fixes both permissions and removes the extended attribute com.apple.quarantine from these new apps which means it can open as soon as possible or take the manual approach (you shouldn't need to do the jre part for the current build meaning step 5 and after you can ignore)