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

Javaは人気のある高水準プログラミング言語です。言語自体の使用または理解に問題がある場合は、このタグを使用してください。このタグが単独で使用されることはめったになく、[spring]、[spring-boot]、[jakarta-ee]、[android]、[javafx]、[gradle]、および[maven]と組み合わせて使用​​されることがほとんどです。

2
特定のJenkinsジョブに「killSoftly」を設定する方法は?
Jenkinsビルドは、ビルドとビルド後のステップの間にハングします。 コンソール出力は、6分の待機があることを示しています(ただし、最大1時間の待機が確認されています)。 10:53:26 BUILD FAILED in 1m 7s 10:53:26 4 actionable tasks: 4 executed 10:53:26 Build step 'Invoke Gradle script' changed build result to FAILURE 10:53:26 Build step 'Invoke Gradle script' marked build as failure 11:09:29 [CucumberReport] Using Cucumber Reports version 4.9.0 私はこれと同様の問題があるこの質問を見つけました、そして彼らは解決策がで設定さ-DSoftKillWaitSeconds=0れていると言いjenkins.xmlます。 ただし、グローバルJenkins設定をいじることなく、特定のジョブのみにオプションを設定する方法が必要です(他のプロジェクトをいじりたくありません)。 編集: ジョブを手動で中止すると、[CucumberReport]ステップの前にCucumberレポートが引き続き生成されます。 また、[ビルド環境]オプションの[ビルドが停止した場合はビルドを中止する]チェックボックスをオンにし、No Activityタイムアウト戦略を(タイムアウト秒数= 2)に設定しました。 これらの設定でプロジェクトをビルドすると、以前のようにビルド履歴に「0秒後に中止」と表示されてビルドが失敗しますが、コンソールの出力は同じです。(何も変化せず、キュウリレポートが生成されますが、一定のタイムアウトの後で)。

1
コンパイラは、無関係なインターフェイスタイプで呼び出されたときに、クラスタイプパラメータを持つこのジェネリックメソッドを選択するのはなぜですか?
次の2つのクラスとインターフェースを検討してください。 public class Class1 {} public class Class2 {} public interface Interface1 {} mandatoryオーバーロードされたメソッドを呼び出すための2番目の呼び出しが、との関係がないClass2場合getInterface1、なぜですか?Interface1Class2 public class Test { public static void main(String[] args) { Class1 class1 = getClass1(); Interface1 interface1 = getInterface1(); mandatory(getClass1()); // prints "T is not class2" mandatory(getInterface1()); // prints "T is class2" mandatory(class1); // prints "T is …

2
Volleyリクエストの再試行ポリシーはタイムアウトを考慮していません
以下のようにDefaultRetryPolicyのinitialTimeoutMsとして1500を設定しましたが、タイムアウトを考慮していません。 request.setRetryPolicy(new DefaultRetryPolicy(1500 , DefaultRetryPolicy.DEFAULT_MAX_RETRIES , DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)); デバイスのWiFiを切断してタイムアウトをテストしましたが、Logcatでこれらの時間を確認しました: 2019-12-16 14:28:15.892 I/MyClass: request sent 2019-12-16 14:28:35.930 I/MyClass: request caught onError 1.5秒後にonResponseまたはonErrorをキャッチするのに20秒以上かかりました。

1
Java-8のメソッドリファレンスとジェネリックス
ジェネリック型と組み合わせたメソッド参照に関する問題に直面しています。 オーバーロードされたメソッドを呼び出す必要があるコードがありますが、エラーで失敗します: 値m1()を解決できません 問題がどこにあるのかを明確にするために、問題を単純化しました。 次のコードは失敗します。 public class Test { void test() { // Getting error here setValue(C1::m1, Integer.ONE); } <E extends I1, T> void setValue(BiConsumer<E, T> cons, T value) { } } interface I1 { } class C1 implements I1 { void m1(Integer value) { } void m1(int value) { …
11 java  generics  lambda  java-8 

2
Java8でのデータのリストのクリーニング
データのリストをクリーニングするために、データのリストと実行するクリーニング操作のリストを受け入れるメソッドを作成しました。 public <T> List<T> cleanData(List<T> data, List<Function<T, T>> cleanOps) { List<T>dataNew=data.stream().map((str) -> { T cleanData = str; for(Function<T,T> function:cleanOps) { cleanData=function.apply(cleanData); } return cleanData; }).collect(Collectors.toList()); return dataNew; } ここでの問題Collectors.toList()は、新しいリストを返すため、リスト全体を再度作成することです。余分なスペースを使用せずに同じ結果を得ることができますか? 以下は、呼び出し用のコードです。 public void processData() { List<Function<String, String>> cleanOps = new ArrayList<>(); cleanOps.add(String::toLowerCase); cleanOps.add(str -> str.replaceAll(" ", "")); List<String> data = new …

3
Mockitoはローカルで最終クラスをモックしますが、ジェンキンスで失敗します
静的メソッドのユニットテストをいくつか作成しました。staticメソッドは引数を1つだけ取ります。引数の型は最終クラスです。コードに関して: public class Utility { public static Optional<String> getName(Customer customer) { // method's body. } } public final class Customer { // class definition } そのため、UtilityクラスUtilityTestsについて、このメソッドのテストを記述したテストクラスを作成しましたgetName。ユニットテストフレームワークはTestNGであり、使用されるモックライブラリはMockitoです。したがって、一般的なテストの構造は次のとおりです。 public class UtilityTests { @Test public void getNameTest() { // Arrange Customer customerMock = Mockito.mock(Customer.class); Mockito.when(...).thenReturn(...); // Act Optional<String> name = Utility.getName(customerMock); // Assert …


4
8進数(base 8)は何に使用されますか?
Javaは、基数2、8、10、16に数値リテラルを書き込む方法を提供します。 なぜbase 8が含まれているのかと思いint x = 0123;ます。 16進数で1バイトの容量がFF + 1であるという事実に似ているのではないかと考えています。
11 java  literals  octal 

4
Log4jの毎日のローテーションと毎月の保存(ファイルアペンダー付き)
log4jアペンダーのいずれかを使用して、特定のローテーション時間と保持制限でログを書き込むことは可能ですか? 目標は次のとおりです。 毎日のログファイルを持っています。深夜に新しいログ用の新しいファイルを作成する ログファイルを保持し、一定時間後に自動的に削除する。X日より古いログファイルを削除します(例:30日) ローテーションは可能のようですが、log4jでは保持時間の制限は不可能です log4jバージョンは1.2です。

3
Spring Boot 2 embed tomcat 9.0.26がjksファイルストリームをロードできない
tomcat 9.0.26が埋め込まれたSpring Boot 2.2.0でSSLを使用しようとしましたが、tomcatはJKSファイルストリームを閉じてロードできません。 アプリケーションのプロパティは次のとおりです。 server.port=443 server.ssl.key-store-type=JKS server.ssl.key-store=C:\\Keystore\\mykey.jks server.ssl.key-store-password=cccc server.ssl.key-alias=*.mydomain.com 例外: org.springframework.boot.web.server.WebServerException:org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:215)〜[spring-boot-2.2.0で組み込みTomcatサーバーを起動できない.BUILD-SNAPSHOT.jar!/:2.2.0.BUILD-SNAPSHOT] org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:297)〜[spring-boot-2.2.0。 BUILD-SNAPSHOT.jar!/:2.2.0.BUILD-SNAPSHOT] org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:163)〜[spring-boot-2.2.0.BUILD -SNAPSHOT.jar!/:2.2.0.BUILD-SNAPSHOT] org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:553)〜[spring-context-5.2.0.RELEASE。jar!/:5.2.0.RELEASE] org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141)〜[spring-boot-2.2.0.BUILD-SNAPSHOT.jar!/ :2.2.0.BUILD-SNAPSHOT] org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747)〜[spring-boot-2.2.0.BUILD-SNAPSHOT.jar!/:2.2.0.BUILD- SNAPSHOT] org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)〜[spring-boot-2.2.0.BUILD-SNAPSHOT.jar!/:2.2.0.BUILD-SNAPSHOT] org.springframework。 boot.SpringApplication.run(SpringApplication.java:315)〜[spring-boot-2.2.0.BUILD-SNAPSHOT.jar!/:2.2.0.BUILD-SNAPSHOT] org.springframework.boot.SpringApplication.run(SpringApplication .java:1226)〜[spring-boot-2.2.0.BUILD-SNAPSHOT.jar!/:2.2.0。BUILD-SNAPSHOT] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)〜[spring-boot-2.2.0.BUILD-SNAPSHOT.jar!/:2.2.0.BUILD-SNAPSHOT] at eu。 soluma.app.SolumaTdvApplication.main(SolumaTdvApplication.java:34)〜[classes!/:0.0.1-SNAPSHOT] at java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)〜[na:na] java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)〜[na:na]にjava.base / jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)に〜[ na:na] at java.base / java.lang.reflect.Method.invoke(Method.java:567)〜[na:na] at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) 〜[SolumaTDV-0.0.1-SNAPSHOT.jar:0.0。1-SNAPSHOT] org.springframework.boot.loader.Launcher.launch(Launcher.java:87)〜[SolumaTDV-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT] …

3
ロンボクゲッター/セッターvs Java 14レコード
私はLombokプロジェクトが大好きですが、最近はJava 14の新機能のいくつかを読んで試しています。 新しい機能には、コンストラクター、プライベート最終フィールド、アクセサー、equals / hashCode、getters、toStringメソッドなどの機能がすでに組み込まれているクラスを作成できるようにするrecordキーワードがあります。 今私の質問です:ロンボクの機能に依存する方が良いですか、それともレコード機能を使い始めるべきですか: これを使用する方が良いです: record Person (String name, String surname) {} またはその: @AllArgsConstructor @ToString @EqualsAndHashCode public class GetterSetterExample { @Getter private int name; @Getter private int surname; } 両方のアプローチの長所と短所は何ですか?

2
Java 14 nullpointerexception詳細メッセージなし
Java 14には多くの新機能があります。それらの1つはNullPointerExceptionで詳細なメッセージを表示しています。Java 14をインストールし、クラスの下でコンパイルして実行しようとしましたが、詳細なメッセージが表示されません。何か不足していますか?助けてください。 ~/code/demo/temp$ java -version openjdk version "14" 2020-03-17 OpenJDK Runtime Environment AdoptOpenJDK (build 14+36) Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.19.0, JRE 14 Mac OS X amd64-64-Bit Compressed References 20200313_47 (JIT enabled, AOT enabled) OpenJ9 - 0133ba037 OMR - 1c04e0ef9 JCL - a73be60649 based on jdk-14+36) ~/code/demo/temp$ cat Hello.java …
10 java  openj9  jdk14 

1
org.apache.maven.project.MavenProjectのmaven依存関係のリストを取得します
を使用していくつかのMavenアーティファクトの依存関係のリストを取得しようとしていorg.apache.maven.project.MavenProjectます。 私のコードはこのようなものです。 public List<Dependencies> loadProject() { Model mavenModel = new Model(); mavenModel.setModelVersion("4.0.0"); mavenModel.setGroupId("org"); mavenModel.setArtifactId("wso2"); mavenModel.setVersion("1.0.0"); addDependency(mavenModel, "com.google.inject", "guice", "4.2.2"); addDependency(mavenModel, "ch.qos.logback", "logback-classic", "1.2.3"); MavenProject mavenProject = new MavenProject(mavenModel); //******* Need to resolve dependencies of `mavenProject` and ******* //******* get the list of dependencies of this project. ******* return dependencies; } …
10 java  maven 

4
Java 8ストリームAPIでpeek()とallMatch()が連動する仕組み
以下のようなpeekメソッドのJava 8 Stream APIに関するクイズを見つけました Arrays.asList("Fred", "Jim", "Sheila") .stream() .peek(System.out::println) .allMatch(s -> s.startsWith("F")); 出力は Fred Jim このストリームがどのように機能するのか混乱していますか?私の期待される結果は Fred Jim Sheila peek()メソッドは中間操作であり、Streamの各要素を処理します。誰かがこれを説明できますか?

3
Amazon PA API 5.0の移行-Maven SDKの依存関係が見つかりません(パブリックリポジトリ)
3月にAmazon PA APIの移行を行う必要があります。「PA API 5.0 SDK」が公開されているMavenパブリックリポジトリを見つけようとしています。 これは公式ドキュメントです:リンク それは言う: paapi5-java-sdk-and-samplesアーカイブをダウンロードして解凍します。 任意のエディターでプロジェクトを開きます。 依存関係フォルダーにあるすべてのjarをビルドパスに追加します。 これは専門家ではなく、このようにメンテナンスすることはできません。 また、これらのjarの多くは古いバージョン(2016のような)です。 AWS PA APIサポートに連絡しようとしましたが、一般的な応答があります(ドキュメントなどを読む) 提案?Java非公式ライブラリを知っていますか?ありがとう

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.