testcontainers / testcontainers/testcontainers-java

[Bug]: Switch docker-java transport to httpclient5 to avoid Java 24 warning

Aperta
#10,257 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

type/bug
Lingua principale
Java
Stelle
8.7k
Fork
1.9k
Merge medio
2g 17h
PR unite (30g)
9

Descrizione

Module

Core

Testcontainers version

1.20.6

Using the latest Testcontainers version?

Yes

Host OS

Win11 x64

Host Arch

x64

Docker version
Client:                                                                                                                                                                                   
 Version:           28.0.4                                                                                                                                                                
 API version:       1.48                                                                                                                                                                  
 Go version:        go1.23.7                                                                                                                                                              
 Git commit:        b8034c0                                                                                                                                                               
 Built:             Tue Mar 25 15:07:48 2025                                                                                                                                              
 OS/Arch:           windows/amd64                                                                                                                                                         
 Context:           desktop-linux                                                                                                                                                         
                                                                                                                                                                                          
Server: Docker Desktop 4.40.0 (187762)                                                                                                                                                    
 Engine:                                                                                                                                                                                  
  Version:          28.0.4                                                                                                                                                                
  API version:      1.48 (minimum version 1.24)                                                                                                                                           
  Go version:       go1.23.7                                                                                                                                                              
  Git commit:       6430e49                                                                                                                                                               
  Built:            Tue Mar 25 15:07:22 2025                                                                                                                                              
  OS/Arch:          linux/amd64                                                                                                                                                           
  Experimental:     false                                                                                                                                                                 
 containerd:                                                                                                                                                                              
  Version:          1.7.26                                                                                                                                                                
  GitCommit:        753481ec61c7c8955a23d6ff7bc8e4daed455734                                                                                                                              
 runc:                                                                                                                                                                                    
  Version:          1.2.5                                                                                                                                                                 
  GitCommit:        v1.2.5-0-g59923ef                                                                                                                                                     
 docker-init:                                                                                                                                                                             
  Version:          0.19.0                                                                                                                                                                
  GitCommit:        de40ad0
What happened?

When using Java 24, the JNA transitive dependency of the zerodep transport of docker-java produces the following message:

Short of requiring every user of testcontainers-java to add a JVM arg, there is no other option but to switch the docker-java transport to get rid of this warning. Httpclient5 would be a good candidate.

Relevant log output
WARNING: A restricted method in java.lang.System has been called                                                                                                                          
WARNING: java.lang.System::load has been called by com.sun.jna.Native in an unnamed module (file:/X:/gradle/caches/modules-2/files-2.1/net.java.dev.jna/jna/5.13.0/1200e7ebeedbe0d10062093f32925a912020e747/jna-5.13.0.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module                                                                                             
WARNING: Restricted methods will be blocked in a future release unless native access is enabled
Additional Information

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

La issue identifica il modulo Core, ma non indica file né test. Inizia tracciando la dipendenza di trasporto docker-java del modulo Core e confrontando il trasporto httpclient5 proposto; il lavoro è completato quando Java 24 non emette più l'avviso di accesso limitato di JNA e il comportamento esistente di Core continua a funzionare.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
docker, java
Ambito
backend, testing-qa
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
48/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.