Jump to content

[Solved] Fallrim Re-Saver and Java 1.8.0_461?


Recommended Posts

Posted (edited)

I updated Java to the latest 64-bit version about a week ago. (build 1.8.0_461-b11) (from 1.8.0_371)

 

Today, I went to launch Fallrim Re-Saver.exe (afaik requires Java) to check something, and I found that the program no longer opens. 


I also downloaded and tried the latest version of Re-Saver as well (apparently the one I'd been using is 'a bit' out of date), but it also failed to launch.

 

I DO have sufficient Administrative priviledge, so that's not it. And I also tried run as admin to be sure. All failed silently.

 

Anyone else using the latest JAVA and also cannot open Re-Saver.exe?

 

Or maybe there's some configuration magicka I forgot since the last time I updated JAVA?

 

Edited by anjenthedog
changed title name to add solved
Posted (edited)
33 minutes ago, anjenthedog said:

1.8.0_461-b11

 

Latest JRE version is 8u461. What did you install?

 

Type this in the terminal/powershell:

java -version

 

Edited by traison
Posted (edited)

I'm sorry. Typo ...

 

it is  461 (1.8.0_461)

Java SE runtime (build 1.8.0_461-b11)

Hotpsot (build 25.461-b11)

 

odd thing is, trying the external test sites implies it's not working, although the command prompt show it is... 

 

Do I have to tunnel through windows security (provide an exception) or something?

 

Presuming you also have 461 installed, is Fallrim Resaver working on your system?

 

TBH, it's been a month or so since I used Fallrim Re-Saver, so it could be something else, but the last time I had issues with Re-Saver, it was a JAVA issue

Edited by anjenthedog
Posted (edited)

Oh I see. It's so much fun when companies use 13 different version numbers for the exact same thing. I'm looking at you Micro$oft.

 

I guess you wouldn't be too excited about installing the JDK and looking at this issue yourself with VisualVM?

 

9 minutes ago, anjenthedog said:

Presuming you also have 461 installed

 

No I have the JDK and it looks completely different. It's version 20 from 2023. Trying to find a list of JDK to JRE version mappings right now, because the JDK appears to have completely replaced the JRE version I have installed. It would be handy to know if JDK version 20 is functionally the same as JRE 8u400 or whatever.

Edited by traison
Posted (edited)
11 minutes ago, traison said:

I guess you wouldn't be too excited about installing the JDK and looking at this issue yourself with VisualVM?

 

 

Lol, no not really my idea of a fun Sunday afternoon.... but I downloaded it, thanks, and will dig in, soon as I install it.

 

edit: Groan, suddenly realized the "need JDK" part... not fun at all. sighs.... here we go down the rabbit hole

 

thanks for the reply and pointer.

 

 

Edited by anjenthedog
Posted (edited)

Oh I see, so Java has pulled a Firefox and changed their versioning scheme. They've gone from 8u461 to just "17" or "20". So my JDK 20 is for Java 20, and there's a JDK for 8u461 which is the one you'd want for this case.

 

After installing the JDK, make sure you test your problem again, as the JDK will replace the JRE.

 

And when you're done with the JDK, you may want to remove it as development libraries tend to be significantly slower than production ones. Reinstall the JRE if "java -version" looks wrong.

 

Edit: Also for some reason they're still updating all these Java versions. Java 8 is getting updates even though Java 24 is out.

Edited by traison
Posted

You may also want to consider switching to Java 24 since it's apparently backwards compatible with 8 and contains bug fixes that may not be in 8. I guess I can also confirm that Java 20 is backwards compatible with 8, if we assume ReSaver was made for 8 (which seems likely).

Posted (edited)

Yep, got it and installed already (the 461 JDK)

 

So... I have both the (64-bit) JDK and the previous (64 bit) installed now. It *might have replaced the guts of the previous install, idk, but if so, it replaced it with identical content, at least when I look at the java -version response from a command window.

 

(verbatim report, not shorthand like my last post)

 

java version "1.8.0_461"

Java(TM) SE Runtime Environment (build 1.8.0_461-b11)

Java Hotspot(TM) 64-bit server VM (build 25.461-b11, mixed mode)

 

VisualVM 2.2 DOES pop open now, so JDK is installed, and theoretically, Java is running. However, I have no idea how to use it.

 

Java's config utility only shows one version installed. (461)

 

However, external Java test sites do not see Java as running on my machine (none of the neato graphics stuff that's supposed to indicate that it's working properly are showing up), which is odd to say the least. (MS security from a recent update maybe?)

Edited by anjenthedog
Posted (edited)

Just got back from the Fallrim webpage at nexus. from the recent bug entries, It looks like I'm not the only one, and the issue apparently started a while before Java 461...

 

thinking out loud... I guess I could revert to Java 371 if push comes shove. I still have the installation executable, so unless it's something between java and windows (ie some windows security """improvement"""), that is an avenue, even if it's not one I'd prefer... that or give Fallrim the boot, which I'm loathe to do.

Edited by anjenthedog
Posted
1 minute ago, anjenthedog said:

However, I have no idea how to use it.

 

Actually, looking at this more closely, it seems like VisualVM can't resume a suspended program and we kinda need that since the program is crashing immediately for you.

 

So instead of VisualVM, we're going to use jdb which is in the JDK.

 

Run ReSaver with jdwp enabled, and connect to it:

  1. Open powershell in the directory that contains ReSaver.exe.
  2. java -D64 -Xms512m -Xmx4g -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=1044 -jar target\ReSaver.jar
  3. Open another powershell in the same directory.
  4. "C:\Program Files\Java\jdk-20\bin\jdb.exe" -connect com.sun.jdi.SocketAttach:port=1044
  5. In the jdb prompt, type "resume", hit enter.
  6. Hopefully jdb will break on error, or print it even.

In step 4, replace the path to jdb with what it is on your system.

 

11 minutes ago, anjenthedog said:

However, external Java test sites do not see Java as running on my machine

 

I would start by checking if there's a Java plugin in your browser and making sure its enabled. If you ask me however, exposing Java to the world is not a good idea.

Posted
4 minutes ago, anjenthedog said:

I guess I could revert to Java 371 if push comes shove.

 

I would recommend testing with Java 24 instead.

Posted (edited)

Problem on step 4 program terminated with the following:

 

At line:1 char:44
+ "C:\Program Files\Java\jdk-20\bin\jdb.exe" -connect com.sun.jdi.Socke ...
+                                            ~~~~~~~~
Unexpected token '-connect' in expression or statement.
At line:1 char:53
+ ... \Java\jdk-20\bin\jdb.exe" -connect com.sun.jdi.SocketAttach:port=1044
+                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Unexpected token 'com.sun.jdi.SocketAttach:port=1044' in expression or statement.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : UnexpectedToken

 

Syntax issue with that bit with "-connect" ? 

Edited by anjenthedog
Posted (edited)
26 minutes ago, anjenthedog said:

...program terminated with the following:

 

That's a powershell problem. It gets confused with running programs sometimes. Swap the command out for:

& 'C:\Program Files\Java\jdk-20\bin\jdb.exe' -connect com.sun.jdi.SocketAttach:port=1044

 

And remember to swap out the path. You most likely don't have jdk 20.

 

23 minutes ago, anjenthedog said:

...I thought it was ~native for Firefox, no?

 

I hope not.

Edited by traison
Posted (edited)

Sadly, even with the command change, it still produces a failure

 

& : The term 'C:\Program Files\Javaa\jdk-20\bin\jdb.exe' is not recognized as the name of a cmdlet, function, script
file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct
and try again.
At line:1 char:3
+ & 'C:\Program Files\Javaa\jdk-20\bin\jdb.exe' -connect com.sun.jdi.So ...
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Program File...-20\bin\jdb.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

 

Before we get too deep in the weeds, it appears that, according to one of the folk who responded in the bug section of fallrim, that

 

https://www.nexusmods.com/skyrimspecialedition/mods/5031?tab=bugs

Topic: Warning !! last Jave update ver 8.451 seem to bug the resaver !!!!

 

Quote

The most likely cause of the problem is the lack of JavaFX in 451

(and versions past 451 from what I can tell from the java website)

 

Many posts indicate they needed to rollback their java installations to regain use of Fallrim ReSaver.

 

Can you confirm that ReSaver works on your machine (presumably under Java 24 as you ~implied you might be using)

Edited by anjenthedog
Posted

PS> checking my firefox extensions, I guess it's not a default any more. If indeed it ever was (I probably installed it for years blindly as part of the java mantra)

Posted (edited)

Your jdb.exe is somewhere else.

 

Edit: Also there was a typo in my previous command: "Java", not "Javaa".

Edited by traison
Posted (edited)

dunno why that extra "a" appeared. Your original post was, afaik correctly spelled (ie not "javaa", but "java"), and I copy-pasted it, so there shouldn't have been anything funky...

 

in any case, making sure that the command syntax wasn't in error this time results in another missing jdb file error.

 

And... when I look for the location, lol, there is no jdk-20 subfolder.... (of course, since I installed the  1.8 jdk... doh!

 

 

Quote

& 'C:\Program Files\Java\jdk-20\bin\jdb.exe' -connect com.sun.jdi.SocketAttach:port=1044

 

trying again with the corrected jdk version indicated.  .../jdk-1.8/

 

Yes, I know you told me to fix the path... I missed that bit.

 

ok. its response after resume

 

All threads resumed.
>
Exception occurred: java.lang.UnsupportedClassVersionError (uncaught)"thread=main", java.lang.ClassLoader.loadClass(), line=-1 bci=121

 

 

Edited by anjenthedog
Posted

Google says this happens when you're trying to run a Java class that's newer than what your runtime supports. Safe to assume ReSaver is no longer Java 8 but rather something newer?

 

How about you remove your current JDK and JRE, and install Java 24?

Posted

Oh and the first instance of the powershell reports

 

ERROR: transport error 202: recv error: Connection reset by peer
Exception in thread "main" java.lang.UnsupportedClassVersionError: javafx/embed/swing/JFXPanel has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)Listening for transport dt_socket at address: 1044

        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at resaver.gui.SaveWindow.initializeJavaFX(SaveWindow.java:2362)
        at resaver.gui.SaveWindow.<init>(SaveWindow.java:83)
        at resaver.ReSaver.call(ReSaver.java:121)
        at resaver.ReSaver.call(ReSaver.java:40)
        at picocli.CommandLine.executeUserObject(CommandLine.java:1953)
        at picocli.CommandLine.access$1300(CommandLine.java:145)
        at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
        at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
        at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
        at picocli.CommandLine.execute(CommandLine.java:2078)
        at resaver.ReSaver.main(ReSaver.java:47)

 

 

Posted (edited)
16 minutes ago, traison said:

Google says this happens when you're trying to run a Java class that's newer than what your runtime supports. Safe to assume ReSaver is no longer Java 8 but rather something newer?

 

How about you remove your current JDK and JRE, and install Java 24?

Sure... but first,

 

can you confirm that ReSaver works under Java 24?

 

And I suppose somewhat critically (since so many have migrated to W11 over the past year or two...or three?) ... that's it's "still" suitable for the Windows 10 environment? 

 

It says "windows, but unlike previous versions it doesn't list the versions of windows it supports.

 

Never mind on the second part. found info... Confirmed to support Windows 10

 

Edited by anjenthedog
Posted (edited)

just got that last one. Ahah... so it's not supported in Java 8 any more. 

 

Anyway. confirmation (Resaver under java24) if you'd be so kind?

Edited by anjenthedog
Posted
5 minutes ago, anjenthedog said:

can you confirm that ReSaver works under Java 24?

 

It works for me under Java 20. It's too late for me to swap to JDK 24, that would have to wait for tomorrow.

 

6 minutes ago, anjenthedog said:

And I suppose somewhat critically (since so many have migrated to W11 over the past year or two...or three?) ... that's it's "still" suitable for the Windows 10 environment?

 

Officially Windows 10 doesn't exist anymore in a month or so. You can trust a large company like Oracle will obey Microsoft to the letter, but in a few weeks all bets are off.

 

7 minutes ago, anjenthedog said:

It says "windows, but unlike previous versions it doesn't list the versions of windows it supports.

 

That's Microsoft speak for "currently supported Windows version".

Posted (edited)

Nevermind, forgot I had a VM ready to go on my laptop.

 

Java 24 (or more specifically JDK24) and ReSaver 6.0.636 work fine on Windows 11. Got no Win10 to test on here so that's on you, but like I said, W10 is still valid for a few weeks. Also I very much doubt there's any relevant differences between W10 and W11 here.

 

Edit: Well done, you solved this mystery. You can now go teach the rookies over at the Nexus how to do things properly. 👍

Edited by traison

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...