Future proof duckdb-java by making it a named module.
- Vorherrschende Sprache
- C++
- Sterne
- 127
- Forks
- 80
- Ø Merge
- 13 Std. 49 Min.
- Gemergte PRs (30 T.)
- 48
Beschreibung
**Bug definition**
I just hit an unexpected compile time error when I named my module, which requires `org.duckdb`
**To Reproduce**
```java
module com.example.dsl.dsl.main {
requires org.duckdb; // This is currently results in a compile time error as duckdb-java is yet to have a module definition
//requires duckdb.jdbc;
requires java.sql;
// ...
exports com.example.dsl.sql.core;
exports com.example.dsl.sql.dialects;
exports com.example.dsl.sql.errors;
exports com.example.dsl.sql.execution;
exports com.example.dsl.sql.transactions;
provides com.example.dsl.sql.execution.SqlExecutor
with com.example.dsl.sql.execution.DuckDBExecutor,
com.example.dsl.sql.execution.SQLiteExecutor,
com.example.dsl.sql.execution.PostgreSQLExecutor;
}
/// This produces the following compile time error:
org.duckdb - Module not found: org.duckdb
duckdb.jdbc - dsl/src/main/java/module-info.java:24: error: module not found: duckdb.jdbc
requires duckdb.jdbc;
```
**Solution proposal**
Add `module-info.java` (module definition) for the `org.duckdb` library to, add/move package-info.java (package definition) to the respective packages e.g., `org.duckdb.io`, `org.duckdb.user`
**Alternatives I've considered**
Leave it as is, but eventually we will have to handle this, particularly for this library as the java platform evolves:
- <>
- <>
**Environment**
- OS: Linux
- CPU architecture: amd64
- org.duckdb.duckdb_jdbc version v1.3.1.0
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginnen Sie mit den in der Proposal genannten Dateien module-info.java und package-info.java und reproduzieren Sie anschließend den Fehler bei der Kompilierung des Java-Moduls mithilfe der Beispiel-requires-Deklarationen. Ermitteln Sie die für die Bibliothek org.duckdb erforderlichen Modulmetadaten und Paketdefinitionen; abgeschlossen ist die Aufgabe, wenn ein benanntes Client-Modul org.duckdb ohne die gemeldeten module-not-found-Fehler auflösen kann.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- databases
- Issue-Typ
- Feature
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100