Cooper message 'Java 'lib' or 'jmod' folders were not found or do not exist in the JDK'

I downloaded the Internet Pack to have a look at it. The RemObjects.InternetPack.Cooper project will not build at the moment. I’ve tried the Java SDK from the official web site and the adoptopenjdk version with the same results:

Java ‘lib’ or ‘jmod’ folders were not found or do not exist in the JDK

I made sure that the paths are set per the documentations.

I’ve also made sure that there is only one version of the JDK installed at a time. I’ve tried both 20 and 17 thinking maybe Elements just wasn’t updated to support 20 yet.

Visual Studio 2022
Elements 11.0.0.2841
Java Runtime 8
JDK 17

image

Do they exist? Can isee a screenshot of whats inside the folder specified as “Java SDK Path”?

I also note that your runtime path and SDK path seem to have different versions… which is odd?

I searched for java runtime environment jre download and it takes me to this url:

https://www.java.com/en/download/manual.jsp

It says the release date is July 18, 2023 so I assume that is the latest.

The sdk downloads page lists JDK versions 20 and 17:

When the Oracle version did not work I tried one of the versions that you had linked in your documentation.

If those aren’t the correct versions then perhaps you can point me to the right places? I know next to nothing about Java at the moment.

jarsigner.exe is in the bin folder

Those look correct and DO have the bin and jmod folders as expected, indeed.

Is this the exact error message?

Can you do me a favor and use the command line to build this project as

ebuild /path/to/project --debug --rebuild, and send the the complete log, to see if it provides some more useful information for me?

The exact error message is the same but with the path that I specified

Java ‘lib’ or ‘jmod’ folders were not found or do not exist in the JDK at ‘C:\Program Files\Eclipse Adoptium\jdk-17.0.8.7-hotspot’.

Not sure how to get a complete log aside from directing the ebuild output to a file?

RemObjects EBuild. An open source build engine for Elements and beyond.
Copyright RemObjects Software 2016-2023. All Rights Reserved. Created by marc hoffman.
Version 11.0.0.2841 (develop) built on bajor, 20230602-113348. Commit 5d3c866.

   -> Task RemObjects.EBuild.CleanSolution started.
      -> Project RemObjects.InternetPack.Cooper started.
         -> Task RemObjects.EBuild.Elements.ElementsCleanProject started for RemObjects.InternetPack.Cooper.
            -> Task RemObjects.EBuild.CleanProject started for RemObjects.InternetPack.Cooper.
               Deleted C:\Users\Brian Wheatley\AppData\Local\RemObjects Software\EBuild\Obj\0AC6BC7C18D03A01F81DC16CB9734560121EC6BF\Release\Cooper
               Deleted C:\Users\Brian Wheatley\AppData\Local\RemObjects Software\EBuild\Obj\0AC6BC7C18D03A01F81DC16CB9734560121EC6BF\Release
            <- Task RemObjects.EBuild.CleanProject finished for RemObjects.InternetPack.Cooper, took 0.0102s (0.010s).
         <- Task RemObjects.EBuild.Elements.ElementsCleanProject finished for RemObjects.InternetPack.Cooper, took 0.0000s (0.014s).
      <- Project RemObjects.InternetPack.Cooper finished, took 0.014s.
      Project 'RemObjects.InternetPack.Cooper' cleaned successfully.
      Solution 'RemObjects.InternetPack.Cooper' cleaned successfully.
   <- Task RemObjects.EBuild.CleanSolution finished for RemObjects.InternetPack.Cooper, took 0.0252s (0.026s).
   -> Task RemObjects.EBuild.BuildSolution started.
      -> Project RemObjects.InternetPack.Cooper started.
         -- Task RemObjects.EBuild.Elements.ElementsProjectPreBuildTask skipped for RemObjects.InternetPack.Cooper, condition not met.
         -> Task RemObjects.EBuild.Elements.ElementsBuildProject started for RemObjects.InternetPack.Cooper.
            -> Task RemObjects.EBuild.Elements.ElementsExpandCopyToOutputDirectoryPaths started for RemObjects.InternetPack.Cooper.
            <- Task RemObjects.EBuild.Elements.ElementsExpandCopyToOutputDirectoryPaths finished for RemObjects.InternetPack.Cooper, took 0.0050s (0.006s).
            -> Task RemObjects.EBuild.Elements.ElementsApplyLegacySettings started for RemObjects.InternetPack.Cooper, Cooper.
            <- Task RemObjects.EBuild.Elements.ElementsApplyLegacySettings finished for RemObjects.InternetPack.Cooper, Cooper, took 0.0020s (0.003s).
            -> Task RemObjects.EBuild.Elements.ElementsSanityCheck started for RemObjects.InternetPack.Cooper, Cooper.
            <- Task RemObjects.EBuild.Elements.ElementsSanityCheck finished for RemObjects.InternetPack.Cooper, Cooper, took 0.0000s (0.001s).
            -> Task RemObjects.EBuild.Elements.ElementsPreparePlatforms started for RemObjects.InternetPack.Cooper, Cooper.
               Preparing target 'Cooper' (platform 'Cooper').
D:             Target-specific Settings, before prepare
D:               - <Mode = Cooper [Target: Cooper]>
D:               - <SubMode = Plain [Target: Cooper]>
               -> Task RemObjects.EBuild.Elements.ElementsPreflightCooper started for RemObjects.InternetPack.Cooper.
E:                Java 'lib' or 'jmod' folders were not found or do not exist in the JDK at 'C:\Program Files\Eclipse Adoptium\jdk-17.0.8.7-hotspot'.
               <- Task RemObjects.EBuild.Elements.ElementsPreflightCooper failed for RemObjects.InternetPack.Cooper, took 0.0223s (0.022s).
D:             Target-specific Settings, after prepare
D:               - <Mode = Cooper [Target: Cooper]>
D:               - <SubMode = Plain [Target: Cooper]>
            <- Task RemObjects.EBuild.Elements.ElementsPreparePlatforms failed for RemObjects.InternetPack.Cooper, Cooper, took 0.0263s (0.027s).
I:          FINALOUTPUT C:\Users\Brian Wheatley\AppData\Local\RemObjects Software\EBuild\Obj\0AC6BC7C18D03A01F81DC16CB9734560121EC6BF\Release\FinalOutput.xml
         <- Task RemObjects.EBuild.Elements.ElementsBuildProject failed for RemObjects.InternetPack.Cooper, took 0.0000s (0.051s).
      <- Project RemObjects.InternetPack.Cooper failed, took 0.051s.
      Project 'RemObjects.InternetPack.Cooper' failed to build.
      Solution 'RemObjects.InternetPack.Cooper' failed to build project 'RemObjects.InternetPack.Cooper'.
   <- Task RemObjects.EBuild.BuildSolution failed for RemObjects.InternetPack.Cooper, took 0.0639s (0.063s).

And this represents the entire contents of CooperPaths.xml

<paths>
	<jre>C:\Program Files\Java\jre-1.8\lib</jre>
	<jdk>C:\Program Files\Eclipse Adoptium\jdk-17.0.8.7-hotspot</jdk>
</paths>

Think io found something. C an you try clearing the “JRE” setting and only leave the JDK setting to point to C:\Program Files\Eclipse Adoptium\jdk-17.0.8.7-hotspot?

Reviewing the code, there’s a scenario where if the JRE path exists, it checks ONLY there, and does not check the JDK. I’ll try and fix that for vNext, of course.

If I remove the JRE path it compiles. There is now a Cooper.jar in the bin folder.

Cool!