問題タブ [spring-boot-maven-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - Spring Boot の application.properties で Maven プロパティを使用する
pom.xml から application.properties にプロパティをロードしようとしています。dev と prod の 2 つのプロファイルを作成して、異なるデータベース URL を使用したいと考えています。Jenkins を CI として使用しています。すべてのアプリ (主に Spring MVC、Boot プロジェクトなし) で、maven プロファイルを使用して Tomcat にデプロイしています。Maven プロパティを使用してこれを行う可能性はありますか? 私はそのようなことを試しました:
spring.datasource.url=${jdbc.url}
java - Spring Bootコマンドラインプロパティは、application.propertiesで定義されたプロパティをオーバーライドしません
レガシー ライブラリを使用する Spring Boot アプリを作成しました。このレガシー ライブラリは、XML で多数の Spring Bean を定義します。そのうちの 1 つは、コンストラクターの引数としてプロパティ値を受け取ります。
私の Spring Boot アプリには、application.properties
このプロパティを次のように定義する があります。
次のように、Maven Spring Boot プラグインを使用してアプリをローカルで実行します。
そして、期待どおりにプロパティ値が Bean に注入されます。
my.url
次のようにコマンドラインでプロパティをオーバーライドしようとすると:
オーバーライドされた値は使用されず、代わりに内部の値application.properties
が使用されます。
Spring Boot のドキュメントによると、コマンド ラインからの値を最優先として取得する必要があります: https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config .html . プロパティを削除するapplication.properties
と、コマンドラインで渡された値が使用されるため、コマンドラインの値が完全に無視されるわけではないため、ここではそうではないようです。application.properties
値がコマンドラインの値を上書きしているようです。
誰が何が起こっているかについて何か考えを持っていますか?
java - Spring Boot 実行可能 jar が java.lang.ClassNotFoundException: org.apache.tomcat.util.descriptor.web.ServletDef をスローする
現在直面している問題を示す簡単なテスト ケースを作成しました。
私がやろうとしていたのは、CommandLineRunner から埋め込まれた Tomcat を手動で起動し、ファイル システムのどこかにある war ファイルを手動で展開することです。
これは私の単純な pom.xml です:
これが起こることです:
Eclipse 内からアプリケーションを実行しても、まったく問題ありません。
「mvn clean package」を実行してから「java -jar [path-to-jar]」を実行すると、次のようになります。
/li>spring-boot-maven-plugin を maven-shade-plugin に置き換えてから、「mvn clean package」に続いて「java -jar [path-to-jar]」を試すと、すべて正常に動作します。
実行可能 jar を実際に機能させるために、spring-boot-maven-plugin の構成が不足していますか?
更新 1
私の問題はこれに多少関連しています。そこで提案されたソリューションを試してみましたが、コマンドラインとEclipseの両方から実際に機能します。
しかし、それでも、私の特定のケースで明らかになった一貫性のない動作を理解していません。
- なぜEclipseで動作し、コマンドラインからは動作しないのですか?
- spring-boot-maven-plugin を maven-shade-plugin に置き換えると機能するのはなぜですか?
eclipse - スプリング ブート アプリケーションでの Oracle ドライバー ojdbc6 maven 依存関係エラー
バックエンドでOracle dbに接続するSpring Bootアプリケーションを開発しようとしています。Oracle db 接続のために、ojdbc6 ドライバーの依存関係を追加しました。私はすでに .m2 フォルダーに ojdbc6 jar を持っています。しかし、まだojdbc6依存関係のpom.xmlでコンパイルエラーが発生しています 'Missing artifact com.oracle:ojdbc6:jar:11.2.0.3'
さまざまなサイトで言及されているソリューションに従って、次の mvn コマンドを使用して ojdbc6 jar をインストールしようとしました: mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion =11.2.0.3 -Dpackaging=jar
しかし、アーティファクトが既に存在すると言って失敗しました:
spring-boot - Springboot が application.dev.properties ファイルをロードしない
私のプロジェクトでは、環境固有のプロパティ ファイルを使用したいと考えています。たとえば、開発で実行している場合は application.dev.properties を使用し、本番環境では application.prod.properties などを使用する必要があります。
リソース フォルダーに以下の 2 つのファイルがあります。
- application.properties (本番用)
- application.dev.properties (開発用)
各ファイルに以下のようなプロパティが 1 つあります。
製品用
開発者向け
そして、私は以下のようなクラスを持っています
上記のコードは、dev のような適切な引数を指定しても、常に prod 設定 (application.properties) ファイルを使用します。--spring.profiles.active=dev
以下は、dev プロパティ ファイルをロードするために使用しているコマンドです。
また、アクティブなプロファイルが dev であることも出力しますが、常に prod db に接続します。
java - java 6でスプリングブートアクチュエータが機能しない
Java では、プロジェクトでスプリング ブート アクチュエータをセットアップしようとしています。スプリング ブートの公式 Web サイトhttp://docs.spring.io/spring-boot/docs/current/reference/html/に基づいて、アクチュエータの依存関係を宣言してみました。以下は、アクチュエータの依存関係を持つ pom ファイルです。
`
Spring Boot サービスが起動しても、http サーバーが起動していません。デフォルトの URL http: //localhost:8080/info または /health にアクセスしようとすると、接続拒否エラーが発生します。私がここで見逃しているものについての指針はありますか?
元の質問の編集: 除外が非常に多い理由を詳しく説明する
上記の除外は、Spring Boot http によって提供されるデフォルトのログバック構成ではなく、log4j を使用できるようにするために行われます。 -configure-log4j-for-logging
上記は、Spring Boot http: //stackoverflow.com/a/36287225/1776145 によって提供される tomcat 接続プールではなく、HikariCP 接続プールを有効にできるようにするために行われました。
上記の除外は、Tomcat http の代わりに jetty を使用することです。 -トムキャットの
Java 6を使用しているため、サポートされていないメジャーマイナーエラーが発生していたため、上記の除外が行われました
spring-boot - Tomcat から war ファイルに定数値を渡すにはどうすればよいですか (つまり、spring-boot に基づいて)?
多くのオンライン検索と多くの実験を試みた後。最後に、要件を満たすリンクを取得できなかったため、最終的にこのプラットフォームを選択しました。
ノート : I am using Spring-Boot Maven Project & Tomcat 7.0.62 version & JDK 7.
まず第一に、私は を使用していてEmbedded Tomcat & produce .Jar
、追加dynamic parameter
で を.jar
使用してcommand line argument
いました。
今、シナリオが変更されました。私の.Jar
ファイルはファイルに変換され.war
ますexcluded Embedded Tomcat
。つまり、Tomcat が埋め込まれていません。
same list of command-line argument
ここで、Spring-Boot プロジェクトのfrom tomcat.war file from outside.
のようなものに渡したいと思います。
助けていただければ幸いです。
spring-boot - spring-boot-maven-plugin で生成された jar を 3 番目のアプリケーションに含める方法
a.jar
spring-boot-maven-plugin によって生成された に依存するアプリケーションを作成します。は、そのフォルダーにあるa.jar
別の に依存しています。アプリケーションを起動すると、次のエラーが表示されます。b.jar
lib\
spring-boot-maven-plugin で生成された jar を 3 番目のアプリケーションのクラスパスに追加することは可能ですか? はいの場合、どのように?