Rumah > Java > javaTutorial > Ralat Deskriptor Modul Java 9: ​​Bagaimana Mengendalikan Nama Dijana Auto seperti \'asli\'?

Ralat Deskriptor Modul Java 9: ​​Bagaimana Mengendalikan Nama Dijana Auto seperti \'asli\'?

Barbara Streisand
Lepaskan: 2024-11-28 17:36:10
asal
786 orang telah melayarinya

Java 9 Module Descriptor Errors: How to Handle Auto-Generated Names like

Java 9 Tidak Dapat Menghasilkan Deskriptor Modul untuk Nama Dijana Auto: Meneroka Penyelesaian

Dalam Java 9, pengenalan modul membawa keperluan untuk menentukan nama modul mengikut peraturan pengecam Java. Walau bagaimanapun, keperluan ini menimbulkan cabaran untuk beberapa nama modul yang dijana secara automatik, terutamanya yang mengandungi kata kunci "asli".

Pertimbangkan kes pergantungan pengangkutan Netty Epoll:

<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-transport-native-epoll</artifactId>
    <version>${netty.version}</version>
    <classifier>${epoll.os}</classifier>
</dependency>
Salin selepas log masuk

Nama modul yang dijana secara automatik untuk kebergantungan ini ialah "netty.transport.native.epoll," yang melanggar peraturan pengecam Java kerana kehadiran "native" kata kunci.

Untuk menangani isu ini, satu penyelesaian yang berpotensi terletak pada mengubah suai fail META-INF/MANIFEST.MF artifak untuk memasukkan atribut Automatic-Module-Name . Atribut ini mentakrifkan nama modul kerana ia sepatutnya digunakan dalam deskriptor modul:

<manifestEntries>
   <Automatic-Module-Name>netty.transport.epoll</Automatic-Module-Name>
</manifestEntries>
Salin selepas log masuk

Walau bagaimanapun, penyelesaian ini memerlukan kerjasama dengan pemilik artifak, menjadikannya pilihan yang kurang segera.

An pendekatan alternatif melibatkan pemilik artifak memasukkan pengisytiharan modul menggunakan module-info.java dalam JAR mereka. Tindakan ini mencetuskan proses migrasi dari bawah ke atas, di mana kebergantungan yang tidak memberikan maklumat modul diandaikan untuk mengeksport semua pakej.

Atas ialah kandungan terperinci Ralat Deskriptor Modul Java 9: ​​Bagaimana Mengendalikan Nama Dijana Auto seperti \'asli\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan