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

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

15
gson.toJson()はStackOverflowErrorをスローします
オブジェクトからJSON文字列を生成したいと思います。 Gson gson = new Gson(); String json = gson.toJson(item); これを実行しようとすると、次のエラーが発生します。 14:46:40,236 ERROR [[BomItemToJSON]] Servlet.service() for servlet BomItemToJSON threw exception java.lang.StackOverflowError at com.google.gson.stream.JsonWriter.string(JsonWriter.java:473) at com.google.gson.stream.JsonWriter.writeDeferredName(JsonWriter.java:347) at com.google.gson.stream.JsonWriter.value(JsonWriter.java:440) at com.google.gson.internal.bind.TypeAdapters$7.write(TypeAdapters.java:235) at com.google.gson.internal.bind.TypeAdapters$7.write(TypeAdapters.java:220) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:89) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:200) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68) at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.write(CollectionTypeAdapterFactory.java:96) at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.write(CollectionTypeAdapterFactory.java:60) at com.google.gson.Gson$FutureTypeAdapter.write(Gson.java:843) これらは私のBomItemクラスの属性です: private int itemId; private …

11
生成されたソースフォルダーでIntellijを使用できません
関連する質問 jaxb2-maven-pluginを使用して生成されたJavaソースコードでディレクトリを自動的に追加するようにIntelliJIDEAやMavenを構成するにはどうすればよいですか? 下にソースを生成するカスタムプラグインがありますtarget/generated-sources(ここにはツール名がないことに注意してください)。だから私はtarget/generated-sources/com/mycompany...などのようなソースを取得します。 この形式はまったく変更できないので、Intellijを構成してソースフォルダーとして追加することができます。今のところ、Intellijがtarget/generated-sources/comソースフォルダーとして追加されていることがわかります。 プラグインを設定するオプションがないことに注意してください! 更新1:生成されたソースをツール名フォルダーの下に配置する必要があるという事実に同意しません。良い慣習かもしれませんが、ジェネレーターが1つしかない場合は、そこに配置する必要はありませんか?繰り返しますが、私のpom.xmlには、ソースフォルダーとして扱う必要があるresourcesことを明確に示すセクションがありtarget/generated-sourcesます。これはEclipseで完全に正常に機能するため、Intellijが私の設定を尊重しない理由がわかりません。 TL; DR-> Intellijがクラスパスに追加することに熱心target/generated-sourcesであるpom.xml理由のリソースセクションに入れると、target/generated-sources/com

14
Java 8、重複する要素を見つけるためのストリーム
整数リスト内の重複する要素をリストアップしようとしています。 List<Integer> numbers = Arrays.asList(new Integer[]{1,2,1,3,4,4}); jdk8のStreamsを使用します。誰かが試しましたか。重複を削除するには、distinct()APIを使用できます。しかし、重複した要素を見つけるのはどうですか?誰かが私を助けることができますか?

6
ThreadLocal変数のパフォーマンス
ThreadLocal通常のフィールドよりも遅い変数からの読み取りはどれくらいですか? より具体的には、単純なオブジェクトの作成は、ThreadLocal変数へのアクセスよりも速いですか、遅いですか? 私はそれが十分に速いので、ThreadLocal<MessageDigest>インスタンスを持つことはMessageDigest毎回のインスタンスを作成するよりもはるかに速いと思います。しかし、それはたとえばバイト[10]やバイト[1000]にも当てはまりますか? 編集:質問は、ThreadLocal's getを呼び出すときに実際に何が起こっているのですか?それが他の分野と同じように単なる分野である場合、答えは「常に最速」ですよね?

8
JavaのURLに一致する正規表現
正規表現を操作するときにRegexBuddyを使用します。そのライブラリから、URLに一致するように正規表現をコピーしました。RegexBuddy内で正常にテストしました。ただし、JavaStringフレーバーとしてコピーしてJavaコードに貼り付けると、機能しません。次のクラスが出力されますfalse。 public class RegexFoo { public static void main(String[] args) { String regex = "\\b(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]"; String text = "http://google.com"; System.out.println(IsMatch(text,regex)); } private static boolean IsMatch(String s, String pattern) { try { Pattern patt = Pattern.compile(pattern); Matcher matcher = patt.matcher(s); return matcher.matches(); } catch (RuntimeException e) { return false; } } …
87 java  regex  regexbuddy 

6
maven-3のタイムスタンプ付きスナップショットを効率的に処理するにはどうすればよいですか?
maven-3がスナップショットアーティファクトの<uniqueVersion> false </ uniqueVersion>のサポートを終了したため、タイムスタンプ付きのSNAPSHOTSを実際に使用する必要があるようです。特に、内部でmaven 3を使用するm2eclipseは影響を受けているようですが、SNAPSHOTSが一意でない場合、update-snapshotsは機能しません。 以前は、すべてのスナップショットをuniqueVersion = falseに設定するのがベストプラクティスのようでした。 現在、タイムスタンプ付きバージョンに切り替えることは大きな問題ではないようです。結局、それらは中央のネクサスリポジトリによって管理されており、定期的な間隔で古いスナップショットを削除できます。 問題は、ローカルの開発者ワークステーションです。彼らのローカルリポジトリは、ユニークなスナップショットですぐに非常に大きくなります。 この問題に対処する方法は? 今、私は次の可能な解決策を見ています: 開発者に定期的にリポジトリを削除するように依頼します(削除に時間がかかり、必要なものすべてをダウンロードするのにさらに時間がかかるため、多くのフラストレーションが発生します) ローカルリポジトリからすべてのSNAPSHOTディレクトリを削除するスクリプトを設定し、開発者にそのスクリプトを時々実行するように依頼します(最初のスクリプトよりも優れていますが、現在のスナップショットの実行とダウンロードにはかなりの時間がかかります) 依存関係:purge-local-repositoryプラグインを使用します(ファイルが開いているため、Eclipseから実行すると問題が発生し、各プロジェクトから実行する必要があります) すべてのワークステーションにネクサスをセットアップし、古いスナップショットをクリーンアップするジョブをセットアップします(最良の結果ですが、50以上のネクサスサーバーを維持したくありません。さらに、開発者のワークステーションではメモリが常に不足しています) SNAPSHOTSの使用を完全に停止します ローカルリポジトリがハードドライブのスペースをいっぱいにしないようにするための最良の方法は何ですか? 更新: 動作を確認し、より多くの情報を提供するには、小さなネクサスサーバーをセットアップし、2つのプロジェクト(aとb)をビルドして、次のことを試してください。 a: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>de.glauche</groupId> <artifactId>a</artifactId> <version>0.0.1-SNAPSHOT</version> <distributionManagement> <snapshotRepository> <id>nexus</id> <name>nexus</name> <url>http://server:8081/nexus/content/repositories/snapshots</url> </snapshotRepository> </distributionManagement> </project> b: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>de.glauche</groupId> <artifactId>b</artifactId> <version>0.0.1-SNAPSHOT</version> <distributionManagement> <snapshotRepository> …
87 java  maven-3 

4
すべてのliquibaseSQLタイプを一覧表示します
変更ログファイルで使用できるサポートされているタイプに関するドキュメントを見つけようとしています。しかし、それを見つけることができません。すべてのタイプ固有の問題を見つけることができるドキュメント、サイト、または同様のものはありますか。たとえば、clobタイプは、さまざまなタイプのデータベースでサポートされています。そして、私は次のようなものを使用する必要があります: <property name="clob.type" value="clob" dbms="oracle,h2,hsqldb"/> <property name="clob.type" value="longtext" dbms="mysql"/> <column name="clob1" type="${clob.type}"> <constraints nullable="true"/> </column> すべてのリキベースタイプが説明されているリソースがあるといいのですが。
87 java  liquibase 


6
Javaでクラス属性をループする方法は?
Javaのクラス属性を動的にループするにはどうすればよいですか。 例: public class MyClass{ private type1 att1; private type2 att2; ... public void function(){ for(var in MyClass.Attributes){ System.out.println(var.class); } } } これはJavaで可能ですか?
87 java  attributes  loops 

3
mapsBy参照不明なターゲットエンティティプロパティ
注釈付きオブジェクトで1対多の関係を設定する際に問題が発生しています。 私は次のものを持っています: @MappedSuperclass public abstract class MappedModel { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id",nullable=false,unique=true) private Long mId; その後、これ @Entity @Table(name="customer") public class Customer extends MappedModel implements Serializable { /** * */ private static final long serialVersionUID = -2543425088717298236L; /** The collection of stores. */ @OneToMany(mappedBy = "customer", cascade = CascadeType.ALL, fetch = FetchType.LAZY) …


6
オブジェクトがパラメータタイプのインスタンスであるかどうかをテストします
オブジェクトがジェネリック型のインスタンスであるかどうかを判断する方法はありますか? public <T> test(Object obj) { if (obj instanceof T) { ... } } それは明らかに機能しません。代替手段はありますか?Javaリフレクションを使用してクラスをインスタンス化し、それがジェネリック型であることを確認したいのと同じですT。

18
tools.jarが見つかりませんでした。C:\ Program Files \ Java \ jre1.8.0_151に有効なJDKインストールが含まれていることを確認してください
JDKプロジェクト構造ファイル/プロジェクト構造を手動で構成したにもかかわらず、このエラーが表示されます。失敗:例外でビルドが失敗しました。 「問題:タスクの実行に失敗しました」:sample:compileReleaseJavaWithJavac '。 tools.jarが見つかりませんでした。C:\ Program Files \ Java \ jre1.8.0_151に有効なJDKインストールが含まれていることを確認してください。` JDKではなくC:\ Program Files \ Java \ jre1.8.0_151を探している理由がわかりません。
87 java  android  gradle 

5
SQlite最寄りの場所の取得(緯度と経度)
SQLiteデータベースに緯度と経度のデータが保存されており、入力したパラメーターに最も近い場所を取得したいと考えています(例:現在の場所-lat / lngなど)。 これはMySQLで可能であり、SQLiteにはHaversine式(球上の距離の計算)のカスタム外部関数が必要であるというかなりの調査を行いましたが、Javaで記述されて機能するものは見つかりませんでした。 また、カスタム関数を追加する場合は、org.sqlite.jar(for org.sqlite.Function)が必要です。これにより、アプリに不要なサイズが追加されます。 これの反対側は、距離だけを表示することはそれほど問題ではないため、SQLのOrder by関数が必要です-カスタムSimpleCursorAdapterですでに実行しましたが、データを並べ替えることができません。データベースに距離列がありません。これは、場所が変わるたびにデータベースを更新することを意味し、バッテリーとパフォーマンスの浪費になります。したがって、データベースにない列でカーソルを並べ替えるアイデアがあれば、私も感謝します。 この機能を使用するAndroidアプリがたくさんあることは知っていますが、誰かがその魔法について説明してくれませんか。 ちなみに、私はこの代替案を見つけました:SQLiteのRadiusに基づいてレコードを取得するためのクエリ? latとlngのcosとsinの値に対して4つの新しい列を作成することを提案していますが、他にそれほど冗長ではない方法はありますか?

10
Maven 3.3.1 ECLIPSE:-Dmaven.multiModuleProjectDirectoryシステムプロパティが設定されていません
Mac OSXにMaven3.3.1をインストールしましたが、Eclipseを使用してMavenプロジェクトをビルドすると、次のエラーが発生します。 -Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match. 以前はMaven3.2.5では発生しませんでした。 これを修正する方法はありますか(3.2.5へのダウングレードを除く)? Eclipseのこの「multiModuleProjectDirectory」プロパティはどこに正確に設定できますか?
86 java  eclipse  macos  maven 

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