eclipse-platform / eclipse-platform/eclipse.platform
Leverage "Foreign Function & Memory API"
- Lingua principale
- Java
- Stelle
- 165
- Fork
- 174
- Merge medio
- 2g 8h
- PR unite (30g)
- 22
Descrizione
Currently especially the resource-api uses some specialized smaller JNI access e.g. for setting file-access (linux/mac) or watch directories (windows).
The upcoming [Project Panama](https://openjdk.java.net/projects/panama/) aims at a close integration of java and native code as an alternative for hand-crafted JNI code.
One very interesting part is the [jextract](https://github.com/openjdk/panama-foreign/blob/foreign-jextract/doc/panama_jextract.md) tool as part of JDK19.
This is based on the [JEP 412: Foreign Function & Memory API](https://openjdk.java.net/jeps/412) already part of Java-17.
Even though I don't know if Java 17 is yet an option (@akurtakov ?) and java 19 even a bit far away I'd like to bring the topic to platform right now so we can investigate and maybe improve and give feedback (e.g. can all relevant native APIs be parsed by jextract?), so hopefully in a glory future we no longer need to build native libraries and can use a pure java interface what will greatly improve the circle of people that could work in that area.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia esaminando le aree di resource-api che utilizzano un accesso JNI specializzato per l’accesso ai file su Linux/macOS e il monitoraggio delle directory su Windows. Verifica se le API native pertinenti possono essere gestite tramite jextract e la Foreign Function & Memory API, quindi documenta i risultati e gli eventuali feedback; l’issue non definisce un obiettivo di implementazione concreto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java
- Ambito
- operating-systems
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100