Git Product home page Git Product logo

jwin32's People

Contributors

falsepattern avatar thomas-vos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

jwin32's Issues

java.lang.UnsatisfiedLinkError: unresolved symbol: IID_IDXGIFactory1

I would like to call the function CreateDXGIFactory1. This is the code I currently have:

import jdk.incubator.foreign.ResourceScope.newConfinedScope
import win32.mapped.com.IDXGIFactory1_J
import win32.mapped.constants.Constants.S_OK
import win32.pure.IDXGIFactory1
import win32.pure.Win32.CreateDXGIFactory1

fun main() {
    System.loadLibrary("Dxgi")

    val scope = newConfinedScope()

    val riid = IDXGIFactory1_J.REFIID() // crashes
    val ppFactory = IDXGIFactory1.allocate(scope)
    val hr = CreateDXGIFactory1(riid, ppFactory)
    if (S_OK != hr) {
        throw IllegalStateException("Result: $hr")
    }
}

I think this is the correct way, but if this is wrong please let me know. I could not find any examples of jwin32, which would be helpful to get started.

When running the code I get the following output:

WARNING: Using incubator modules: jdk.incubator.foreign
Exception in thread "main" java.lang.UnsatisfiedLinkError: unresolved symbol: IID_IDXGIFactory1
	at win32.pure.RuntimeHelper.requireNonNull(RuntimeHelper.java:39)
	at win32.pure.Win32_22.IID_IDXGIFactory1$SEGMENT(Win32_22.java:2734)
	at win32.mapped.com.IDXGIFactory1_J.REFIID(IDXGIFactory1_J.java:64)
	at MainKt.main(Main.kt:12)
	at MainKt.main(Main.kt)

Any idea what is going wrong here? Looks like the library is not loaded correctly, but I do not know why,

I am using openjdk-17-panama+3-167_windows-x64_bin.

I cloned the jwin32 project, and added the line #include <dxgi.h> to config.h. Then I ran the generate and build commands and included the generated jar in my project.

Help would be appreciated. Your project looks amazing.

Error then build jars

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  28.450 s
[INFO] Finished at: 2022-12-05T22:04:47-08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project jwin32: Compilation failure: Compilation failure:
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/special/StructGUID.java:[33,1] cannot find symbol
[ERROR]   symbol:   static C_CHAR
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/Struct.java:[37,1] cannot find symbol
[ERROR]   symbol:   static C_CHAR
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[121,37] cannot find symbol
[ERROR]   symbol:   variable C_SHORT
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[121,65] cannot find symbol
[ERROR]   symbol:   variable C_SHORT
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[137,37] cannot find symbol
[ERROR]   symbol:   variable C_INT
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[137,63] cannot find symbol
[ERROR]   symbol:   variable C_INT
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[153,37] cannot find symbol
[ERROR]   symbol:   variable C_LONG
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[153,64] cannot find symbol
[ERROR]   symbol:   variable C_LONG
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[169,37] cannot find symbol
[ERROR]   symbol:   variable C_LONG_LONG
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[169,69] cannot find symbol
[ERROR]   symbol:   variable C_LONG_LONG
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[185,37] cannot find symbol
[ERROR]   symbol:   variable C_POINTER
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[185,67] cannot find symbol
[ERROR]   symbol:   variable C_POINTER
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryAllocator.java:[222,23] cannot find symbol
[ERROR]   symbol:   method toCString(java.lang.String,com.falsepattern.jwin32.memory.MemoryAllocator)
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/special/StructGUID.java:[48,49] cannot find symbol
[ERROR]   symbol:   variable C_LONG
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/special/StructGUID.java:[49,50] cannot find symbol
[ERROR]   symbol:   variable C_SHORT
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/special/StructGUID.java:[50,50] cannot find symbol
[ERROR]   symbol:   variable C_SHORT
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/special/StructGUID.java:[51,74] cannot find symbol
[ERROR]   symbol:   variable C_CHAR
[ERROR]   location: class com.falsepattern.jwin32.internal.conversion.special.StructGUID
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/ConstMapper.java:[100,104] cannot find symbol
[ERROR]   symbol:   method globalNativeSegment()
[ERROR]   location: interface jdk.incubator.foreign.MemorySegment
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/internal/conversion/ConstMapper.java:[103,58] cannot find symbol
[ERROR]   symbol:   method toJavaString(jdk.incubator.foreign.MemorySegment)
[ERROR]   location: interface jdk.incubator.foreign.CLinker
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[36,51] method varHandle in class jdk.incubator.foreign.MemoryHandles cannot be applied to given types;
[ERROR]   required: jdk.incubator.foreign.ValueLayout
[ERROR]   found:    java.lang.Class<java.lang.Byte>,java.nio.ByteOrder
[ERROR]   reason: actual and formal argument lists differ in length
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[37,52] method varHandle in class jdk.incubator.foreign.MemoryHandles cannot be applied to given types;
[ERROR]   required: jdk.incubator.foreign.ValueLayout
[ERROR]   found:    java.lang.Class<java.lang.Short>,java.nio.ByteOrder
[ERROR]   reason: actual and formal argument lists differ in length
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[38,50] method varHandle in class jdk.incubator.foreign.MemoryHandles cannot be applied to given types;
[ERROR]   required: jdk.incubator.foreign.ValueLayout
[ERROR]   found:    java.lang.Class<java.lang.Integer>,java.nio.ByteOrder
[ERROR]   reason: actual and formal argument lists differ in length
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[39,51] method varHandle in class jdk.incubator.foreign.MemoryHandles cannot be applied to given types;
[ERROR]   required: jdk.incubator.foreign.ValueLayout
[ERROR]   found:    java.lang.Class<java.lang.Long>,java.nio.ByteOrder
[ERROR]   reason: actual and formal argument lists differ in length
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[228,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,byte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[232,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,char)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[236,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,short)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[240,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,int)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[244,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,float)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[248,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,long)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[252,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,double)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[256,24] no suitable method found for allocate(jdk.incubator.foreign.ValueLayout,jdk.incubator.foreign.Addressable)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfByte,byte) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfChar,char) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfShort,short) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfInt,int) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfFloat,float) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfLong,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfDouble,double) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocate(jdk.incubator.foreign.ValueLayout.OfAddress,jdk.incubator.foreign.Addressable) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfAddress)
[ERROR]     method com.falsepattern.jwin32.memory.MemoryAllocator.allocate(long,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[260,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,byte[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; byte[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[264,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,short[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; short[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[268,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,char[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; char[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[272,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,int[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; int[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[276,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,float[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; float[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[280,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,long[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; long[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[284,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,double[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; double[] cannot be converted to long)
[ERROR] /C:/Users/User/Desktop/jwin32-master/jwin32-master/src/main/java/com/falsepattern/jwin32/memory/MemoryUtil.java:[288,24] no suitable method found for allocateArray(jdk.incubator.foreign.ValueLayout,jdk.incubator.foreign.Addressable[])
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfByte,byte[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfByte)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfShort,short[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfShort)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfChar,char[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfChar)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfInt,int[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfInt)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfFloat,float[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfFloat)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfLong,long[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfLong)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.ValueLayout.OfDouble,double[]) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.ValueLayout cannot be converted to jdk.incubator.foreign.ValueLayout.OfDouble)
[ERROR]     method jdk.incubator.foreign.SegmentAllocator.allocateArray(jdk.incubator.foreign.MemoryLayout,long) is not applicable
[ERROR]       (argument mismatch; jdk.incubator.foreign.Addressable[] cannot be converted to long)
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

OS:Windows 11 Devorment VM
jdk:openjdk version "19-panama" 2022-09-20

Internal Error (codeBuffer.cpp:972), pid=4180, tid=11576

I don't expect it's a bug with your code. I just don't expect to get help from oracle and I was hoping you'd have a hint for me.
I used visual studio 2019 to install the Desktop development with C++ dependency.

C:\Users\richie\notMyCode\FalsePattern\jwin32>generate_win.bat

C:\Users\richie\notMyCode\FalsePattern\jwin32>rem @echo off

C:\Users\richie\notMyCode\FalsePattern\jwin32>rmdir /S /Q .\src\main\java\win32

C:\Users\richie\notMyCode\FalsePattern\jwin32>mkdir .\src\main\java\win32

C:\Users\richie\notMyCode\FalsePattern\jwin32>mkdir .\src\main\java\win32\pure

C:\Users\richie\notMyCode\FalsePattern\jwin32>mkdir .\src\main\java\win32\mapped

C:\Users\richie\notMyCode\FalsePattern\jwin32>mkdir .\src\main\java\win32\mapped\com

C:\Users\richie\notMyCode\FalsePattern\jwin32>mkdir .\src\main\java\win32\mapped\struct

C:\Users\richie\notMyCode\FalsePattern\jwin32>REM Edit this line if you want to make custom mappings:

C:\Users\richie\notMyCode\FalsePattern\jwin32>jextract --source --header-class-name Win32 -d .\src\main\java -t win32.pure .\c\native.h
WARNING: Using incubator modules: jdk.incubator.jextract, jdk.incubator.foreign
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (codeBuffer.cpp:972), pid=4180, tid=11576
#  guarantee(sect->end() <= tend) failed: sanity
#
# JRE version: OpenJDK Runtime Environment (17.0+3) (build 17-panama+3-167)
# Java VM: OpenJDK 64-Bit Server VM (17-panama+3-167, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# C:\Users\richie\notMyCode\FalsePattern\jwin32\hs_err_pid4180.log
#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#

C:\Users\richie\notMyCode\FalsePattern\jwin32>echo Press any key to exit...
Press any key to exit...

C:\Users\richie\notMyCode\FalsePattern\jwin32>pause  1>nul

C:\Users\richie\notMyCode\FalsePattern\jwin32>

Thanks!

Windows Runtime (WinRT) APIs

Do you have any plans to support the WinRT APIs?

The WinRT APIs are COM based. I tried including one of the WinRT headers config.h headers, and jwin32 generated a lot of COM wrappers. The resulting JAR was around 114MB and it took quite a long time to generate.

The generated COM APIs seemed to be alright, but I was unable to test them because I could not figure out how to link with the WinRT libraries.

Do you know how to link with the WinRT APIs in Java?

There is a wrapper for the WinRT APIs for C++ to make the APIs more accessible, where they mention you can link with an umbrella framework called WindowsApp.lib. Not sure if that is related when using the WinRT COM APIs directly. See: https://docs.microsoft.com/en-us/windows/uwp/cpp-and-winrt-apis/get-started#linking

Some examples how to use WinRT from C:

Maybe it is easier to just use the WinRT APIs from C++ using the C++/WinRT wrapper library (headers projection). The WinRT APIs would be easier to use that way. I think in that case the best way would be to create DLL which uses the WinRT APIs from C++, and use that DLL using Panama from Java. This would solve the linking issues, as that could be done from C++ using the WindowsApp.lib. Do you have any experience with the WinRT APIs?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.