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

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 

1
なぜarray [idx ++] + =“ a”は、idxをJava 8では1回、Java 9および10では2回増やすのですか?
挑戦のために、仲間のコードゴルファー は次のコードを書きました: import java.util.*; public class Main { public static void main(String[] args) { int size = 3; String[] array = new String[size]; Arrays.fill(array, ""); for(int i = 0; i <= 100; ) { array[i++%size] += i + " "; } for(String element: array) { System.out.println(element); } } } このコードをJava …
751 java  java-8  javac  java-9  java-10 

8
非推奨のJPMSモジュールとJava EE APIの置き換え
Javaの9は、Java EEのAPIが含まれている6個のモジュールを非推奨とされている、彼らは削除されようとしてすぐに: java.activation付きjavax.activationパッケージ java.corbaとjavax.activity、javax.rmi、javax.rmi.CORBA、およびorg.omg.*パッケージ java.transaction付きjavax.transactionパッケージ すべてのjavax.xml.bind.*パッケージを含むjava.xml.bind java.xml.wsとjavax.jws、javax.jws.soap、javax.xml.soap、およびすべてjavax.xml.ws.*のパッケージ java.xml.ws.annotation付きjavax.annotationパッケージ 維持されているサードパーティのアーティファクトのうち、これらのAPIを提供するものはどれですか。それらがそれらのAPIをどれだけうまく提供しているか、または彼らが提供しなければならないその他の機能は問題ではありません-重要なのは、これらがこれらのモジュール/パッケージのドロップインの置き換えですか? 知識の収集を容易にするために、これまでにわかったことを回答し、その回答をコミュニティWikiにしました。自分の答えを書くのではなく、もっと広げてほしいです。 投票する前に: はい、個々のモジュールにはすでにいくつかの質問があり、この質問への回答はもちろんその情報を複製します。しかし、私の知る限り、これらすべてについて学ぶべき単一のポイントはありません。 ライブラリの推奨事項を求める質問は、「意見の分かれた回答やスパムを引き付ける傾向がある」ため、通常はトピック外と見なされますが、ここでは当てはまりません。有効なライブラリのセットは明確に描かれています。特定の標準を実装する必要があります。それ以外は何も問題ではないので、意見やスパムのリスクはあまりありません。

23
android-sdkのインストールに失敗しました:「java.lang.NoClassDefFoundError:javax / xml / bind / annotation / XmlSchema」
Android SDKツールをインストールすると、次のエラーが発生します。 java.lang.NoClassDefFoundError:javax / xml / bind / annotation / XmlSchema なぜこれが起こっているのですか、どうすれば修正できますか? デバッグ出力: $ java --version java 9 Java(TM) SE Runtime Environment (build 9+181) Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode) $ brew cask install android-sdk ==> Caveats We will install android-sdk-tools, platform-tools, and build-tools for you. You …
166 java  android  java-9 

6
JavaではオプションのorElse
私はJava 8で新しいOptional型を使用していて、機能的にサポートされていない一般的な操作のように思われるものに遭遇しました:「orElseOptional」 次のパターンを考えてみます。 Optional<Result> resultFromServiceA = serviceA(args); if (resultFromServiceA.isPresent) return result; else { Optional<Result> resultFromServiceB = serviceB(args); if (resultFromServiceB.isPresent) return resultFromServiceB; else return serviceC(args); } このパターンには多くの形式がありますが、結局のところ、現在のものが存在しない場合にのみ呼び出される、新しいオプションを生成する関数を取るオプションの「orElse」が必要になります。 実装は次のようになります。 public Optional<T> orElse(Supplier<Optional<? extends T>> otherSupplier) { return value != null ? this : other.get(); } そのようなメソッドが存在しない理由があるのか​​、意図せずにOptionalを使用しているだけなのか、そしてこのケースに対処するために人々が他にどのようにしてきたのか、私は興味があります。 私のコードで作業している人々は必ずしもそれらが存在することを知っているとは限らないため、カスタムユーティリティクラス/メソッドを含むソリューションはエレガントではないと思います。 また、誰かが知っている場合、そのようなメソッドはJDK 9に含まれますか?また、どこでそのようなメソッドを提案できますか?これは、APIのかなりの省略のように思えます。
137 java  lambda  java-8  optional  java-9 


4
違法なリフレクティブアクセスとは
Java 9での不正なリフレクトアクセスについては、多くの質問があります。 さて、Googleがすべて吐き出してエラーメッセージを回避しようとしているので私が見つけられないのは、実際には違法なリフレクティブアクセスです。 だから私の質問はかなり簡単です: 不正なリフレクティブアクセスの定義と警告をトリガーする状況 私は、Java 9で導入されたカプセル化の原則と関係があることを収集しましたが、それがすべて一緒にハングアップし、説明が見つからないシナリオで警告をトリガーするものは何ですか。
126 java  java-9  java-module 

4
List.ofとArrays.asListの違いは何ですか?
Java 9はリストの新しいファクトリーメソッドを導入しましたList.of: List<String> strings = List.of("first", "second"); 以前のオプションと新しいオプションの違いは何ですか?つまり、これの違いは何ですか? Arrays.asList(1, 2, 3); この: List.of(1, 2, 3);
117 java  list  java-9 

3
文字列連結はJava 9でどのように実装されていますか?
JEP 280で記述されているように、文字列連結を示します。 Stringによって生成された静的連結バイトコードシーケンスを変更して、JDKライブラリ関数の呼び出しをjavac使用しinvokedynamicます。これStringにより、によってエミットされたバイトコードをさらに変更することなく、将来の連結の最適化が可能になりますjavac。 ここで、invokedynamic呼び出しの使用方法と、バイトコードの連結がどのように異なるのかを理解したいと思いinvokedynamicます。

30
Eclipse LauncherFactoryのNoClassDefFoundErrorが原因で、JUnit5を使用したテストが見つかりませんでした
問題 プロジェクトのJUnitテストを実行するたびに(Java9およびEclipseOxygen1.aでJUnit5を使用)、Eclipseがテストを見つけられないという問題が発生します。 説明 実行構成では、Eclipseは@Testアノテーションが付けられたメソッドを見つけることさえできず、代わりに「(すべてのメソッド)」のみを表示します。次の写真は、うまくいけば、私のセットアップをよりよく垣間見ることができます。 コンソール出力: java.lang.NoClassDefFoundError: org/junit/platform/launcher/core/LauncherFactory at org.eclipse.jdt.internal.junit5.runner.JUnit5TestLoader.<init>(JUnit5TestLoader.java:31) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) at java.base/java.lang.Class.newInstance(Unknown Source) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.createRawTestLoader(RemoteTestRunner.java:368) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.createLoader(RemoteTestRunner.java:363) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.defaultInit(RemoteTestRunner.java:307) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.init(RemoteTestRunner.java:222) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206) Caused by: java.lang.ClassNotFoundException: org.junit.platform.launcher.core.LauncherFactory at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ... 11 more …
99 java  eclipse  junit  java-9  junit5 

23
Java 9でsdkmanager --listを実行できませんでした
ダウンロードしてインストールしました: jdk-9.0.1_osx-x64_bin.dmgOracleのJDK()はこちら こちらのsdk-tools-darwin-3859397.zip GoogleのAndroid SDK()。 PATH変数を構成した後、SDKコンポーネントを管理するためsdkmanagerのandroidコマンドに代わるを実行してみました。ただし、次のように失敗しました。 $ sdkmanager --list Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156) at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75) at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81) at com.android.sdklib.tool.SdkManagerCli.main(SdkManagerCli.java:117) at com.android.sdklib.tool.SdkManagerCli.main(SdkManagerCli.java:93) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:185) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) ... 5 more Javaのバージョンは次のとおりです。 $ java -version java version "9.0.1" Java(TM) SE Runtime Environment (build …

2
Java 9コンパイラの--releaseフラグとは何ですか?
Java 9javacには新しいフラグがあり--releaseます: > javac --help ... --release <release> Compile for a specific VM version. Supported targets: 6, 7, 8, 9 フラグ-sourceとはどう違うの-targetですか?それは単なるショートカット-source X -target Xですか?
89 java  javac  java-9 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.