タグ付けされた質問 「java-11」

30
Java 9でjava.lang.NoClassDefFoundError:javax / xml / bind / JAXBExceptionを解決する方法
Java 6/7/8のJDKの一部として提供されているJAXB APIクラスを使用するコードがいくつかあります。Java 9で同じコードを実行すると、実行時にJAXBクラスが見つからないことを示すエラーが発生します。 JAXBクラスはJava 6以降、JDKの一部として提供されていますが、なぜJava 9はこれらのクラスを見つけられないのですか?
845 java  jaxb  java-9  java-11  java-10 

6
WindowsにOpenJDK 11をインストールする方法
以前は、Oracleは次のようなWindows用の実行可能インストーラーを公開していました。 ファイルを解凍する インストールされているバージョンとパスを示すレジストリキーを追加する JREをシステムPATHに追加します。 Windowsにアンインストーラーを登録します。 Java 11以降、Oracleの無料バージョンのJava(Oracle OpenJDK)にはインストーラーが含まれていないようです。これは、バイナリを含む単なるzipファイルです。 前述の統合がなくなったのを見て、WindowsにOpenJDK 11をインストールする方法を教えてください。それらは必要ではありませんか?
269 windows  java-11 

3
Java 11ベースのDockerイメージが非常に大きいのはなぜですか?(openjdk:11-jre-slim)
Java 11が最新のLTSバージョンであることが発表されています。したがって、このJavaバージョンに基づいて新しいサービスを開始しようとしています。 ただし、Java 11のベースDockerイメージは、Java 8の同等のイメージよりもはるかに大きくなります。 openjdk:8-jre-alpine:84 MB openjdk:11-jre-slim:283 MB (私は公式のOpenJDKと各Javaバージョンの最も軽量なイメージのみを検討しています。) より深く掘り下げると、次の「もの」が明らかになりました。 openjdk:11-jre-slim画像は、ベースイメージを使用しますdebian:sid-slim。これには2つの問題があります。 これは60 MB大きいです alpine:3.8 Debianのsidバージョンは不安定であり、 openjdk-11-jre-headlessイメージにインストールされているパッケージは、(Dockerコンテナーの実行中)の3倍openjdk8-jreです。 openjdk:8-jre-alpine: / # du -hs /usr/lib/jvm/java-1.8-openjdk/jre/lib/ 57.5M /usr/lib/jvm/java-1.8-openjdk/jre/lib/ openjdk:11-jre-slim: # du -sh /usr/lib/jvm/java-11-openjdk-amd64/lib/ 179M /usr/lib/jvm/java-11-openjdk-amd64/lib/ 深く行くと、私はこの重さの「根」を発見しました-それmodulesはJDKのファイルです: # ls -lhG /usr/lib/jvm/java-11-openjdk-amd64/lib/modules 135M /usr/lib/jvm/java-11-openjdk-amd64/lib/modules それで、今来た質問: alpineJava 11スリムイメージのベースイメージとして使用されなくなったのはなぜですか? LTS Javaイメージに不安定なsidバージョンが使用されるのはなぜですか? OpenJDK 11のスリム/ヘッドレス/ JREパッケージが、類似のOpenJDK 8パッケージと比較してなぜそれほど大きいのですか? OpenJDK 11で135 …
145 java  docker  alpine  java-11 

7
Mavenで単純なJava 10 / Java 11プロジェクトをコンパイルできない
ささいなMavenプロジェクトがあります。 src └── main └── java └── module-info.java pom.xml pom.xml: <groupId>org.example</groupId> <artifactId>example</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <name>example</name> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <release>10</release> </configuration> </plugin> </plugins> </build> を介してプロジェクトをビルドすると、mvn -X install -DskipTests=true失敗します。 org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:testCompile (default-testCompile) on project example: Execution default-testCompile of goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:testCompile failed. at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) at …

8
UbuntuにJDK11をインストールするにはどうすればよいですか?
そのため、Java11がリリースされました。コマンドラインからインストールする方法(OracleのOpenJDK)を知っている人はいますか? Oracle Java10の以前のようなものを見たいと思います。 sudo add-apt-repository ppa:linuxuprising/java sudo apt-get update sudo apt-get install oracle-java10-installer PS同様の質問で提案された指示: sudo apt-get install openjdk-11-jdk 動作しません。
106 java  ubuntu  java-11 

3
Java 11のString trim()メソッドとstrip()メソッドの違い
その他の変更の中で、JDK 11はjava.lang.Stringクラスに6つの新しいメソッドを導入しています。 repeat(int)- intパラメータで指定された回数だけ文字列を繰り返します lines() -Spliteratorを使用してソース文字列からのラインを遅延して提供します isBlank() -文字列が空であるか、空白文字のみが含まれているかを示します stripLeading() -最初から空白を削除します stripTrailing() -末尾の空白を削除します strip() -文字列の最初と最後の両方から空白を削除します 特に、strip()によく似ていtrim()ます。この記事の とおり、strip*()メソッドは次のように設計されています。 String.strip()、String.stripLeading()、およびString.stripTrailing()メソッドは、ターゲット文字列の前面、背面、または前面と背面の両方で、[Character.isWhiteSpace()によって決定される]空白を削除します。 String.trim() JavaDocの状態: /** * Returns a string whose value is this string, with any leading and trailing * whitespace removed. * ... */ これは上記の引用とほとんど同じです。 Java 11 String.trim()との違いは何String.strip()ですか?
103 java  string  trim  strip  java-11 

4
IntelliJはOpenJDK11でJavaFX11を認識できません
IntellJにJavaFXパッケージを認識させるのに問題があります。OpenJDK 11を使用する新しいJavaFXプロジェクトでは、プロジェクトをビルドしようとすると、IntelliJはJavaFXパッケージを認識できません。 openjfx:javafx-base-11Mavenリポジトリからインポートしました。 私は他の質問を見てきましたが、解決策は、バイトコードが正しいレベルにあること(私のもの)から、プロジェクトの言語が正しいこと(私のもの)までさまざまです。 誰かアイデアはありますか? 編集: エラー:

1
カスタムコンパレーターを使用してTreeSetから削除しないと、より大きな項目のセットが削除されないのはなぜですか?
Java 8とJava 11の両方を使用TreeSetして、String::compareToIgnoreCaseコンパレーターで以下を検討してください。 final Set<String> languages = new TreeSet<>(String::compareToIgnoreCase); languages.add("java"); languages.add("c++"); languages.add("python"); System.out.println(languages); // [c++, java, python] に存在する正確な要素を削除しようとすると、TreeSet機能します。指定された要素はすべて削除されます。 languages.removeAll(Arrays.asList("PYTHON", "C++")); System.out.println(languages); // [java] ただし、に存在する以上のものを削除しようとするTreeSetと、呼び出しは何も削除しません(これは後続の呼び出しではなく、上のスニペットの代わりに呼び出されます)。 languages.removeAll(Arrays.asList("PYTHON", "C++", "LISP")); System.out.println(languages); // [c++, java, python] 何が悪いのですか?なぜこのように動作するのですか? 編集:String::compareToIgnoreCaseは有効なコンパレータです: (l, r) -> l.compareToIgnoreCase(r)

1
Paths.getとPath.of
私の知る限り伝える、できるとPaths.getとPath.ofまったく同じことを行うように見える、に一個の以上の文字列を回しPathオブジェクト。ドキュメントhttps://docs.oracle.com/javase/8/docs/api/java/nio/file/Paths.html#get-java.lang.String-java.lang.String...-およびhttps: //docs.oracle.com/en/java/javase/13/docs/api/java.base/java/nio/file/Path.html#of(java.lang.String,java.lang.String ... )同じ表現を使用します。それらは実際には同じですか? Path.of後で紹介されました。予想:それは一貫したFoo.ofスタイルのために導入されました。その場合、それは一貫性/美的理由から好ましいと考えられますか?
20 java  java-11 

3
JDK 11+およびJavadoc
Exit code: 1 - javadoc: error - The code being documented uses packages in the unnamed module, but the packages defined in https://docs.oracle.com/en/java/javase/11/docs/api/ are in named modules. (他のフォーラムで提案されているように)ソースのバージョンを1.8に変更せずにjavadocを機能させることができた人はいますか?私はJDK v11.0.5を使用していますが、問題はまだ存在しています(JDK 12+でも)。 編集:このエラーはmavenから発生し、maven-javadoc-pluginによってスローされました。設定を行ってもJDK 11+で機能させることができませんでした<source>8</source>。

8
条件付きでストリームから最初の(インデックスが0の)要素を削除する
私は次のコードを持っています: Stream<String> lines = reader.lines(); "email"最初の文字列が等しい場合、ストリームから最初の文字列を削除します。ストリームの他の文字列については、このチェックは必要ありません。 どうすればそれを達成できますか? PS 確かに、それをリストに変換してから、オールドスクールforループを使用することもできますが、さらにストリームをもう一度必要とします。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.