2016-10-25 16 views
0

Log4j2でログを記録するスタンドアロンJavaプログラムを作成して実行しました。Slf4jを使用しています。ログは期待どおりに機能しました。OpenShift、Log4j2&Maven - プロジェクトの依存関係を解決できませんでした

私はその後、私はのEclipse IDEに開発しています既存の(と作業)OpenShift Java Webアプリケーションにこの機能を追加しました。

私はのpom.xml

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>1.7.21</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-core</artifactId> 
     <version>2.7</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-api</artifactId> 
     <version>2.7</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-slf4j-impl</artifactId> 
     <version>2.7</version> 
    </dependency> 

に次の依存関係を追加しました私は、単純なlog4j2.xml設定ファイルを使用してJavaクラスにいくつかのロギングコードを追加しました。

ウェブアプリケーションをローカルで実行したところ、正常に動作しました。

私はその後、ステージング領域にGitにのpom.xmllog4j2.xmlを移動し、をコミットしてプッシュしました。これは正常に動作し、問題はありません。

私は、ダイアログコンソールウィンドウに、次のエラーメッセージが表示されました。この時間は:

[ERROR] Failed to execute goal on project testdb: Could not resolve dependencies for project testdb:testdb:war:1.0: Failure to find org.apache.logging.log4j:log4j-api:jar:2.7 in http://maven.repository.redhat.com/techpreview/all was cached in the local repository, resolution will not be reattempted until the update interval of eap has elapsed or updates are forced -> [Help 1] 

それは、のlog4j-APIバージョン2.7RedHatのMavenのリポジトリでは利用できないことを言っているように見えます。しかし、私は確かにこれを行う最初の人ではないので、いくつかの根本的なエラーがあると思う。

アイデア?どんな助けも大いに評価されるでしょう...

答えて

0

これはタイムリーで役立ちます。 OpenShiftの〜/ .m2/repository/path/to/your/dependencyの無効なローカルキャッシュ依存関係を削除し、別のgit pushを起動してmavenビルドをトリガーすることで、この問題を解決してこの問題を解決できました。

+1

まずはGeorgeとClaudioに感謝します。それが起こったので、私はちょうど次の日に別のコミットとプッシュを行い、成功しました。この問題は、OpenShiftグリッチであったようです。私は、Georgeの提案はMavenを構築して強制する良い機会を持っていると信じています。 – Lyndon

0

私は現在のプロジェクトでRedHat Maven Repositoryと同じ問題があります。

私の現在のプロジェクトのコードに起因する可能性のあるすべての問題を回避するために、私は新しいプロジェクトを作成し、それにindex.htmlファイルの少しの更新を加えました(単にスペース文字を追加しました)。 次に、「Gitのプッシュ」コマンドの後、私は基本的なプラグインのmaven-クリーンプラグインのダウンロードにリモートビルドフェーズで同じエラーを得たが、この時間:

remote: [ERROR] Plugin org.apache.maven.plugins:maven-clean-plugin:2.4.1 
or one of its dependencies could not be resolved: Failed to read artifact 
descriptor for org.apache.maven.plugins:maven-clean-plugin:jar:2.4.1: 
Failure to find org.apache.maven.plugins:maven-clean-plugin:pom:2.4.1 in 
http://mirror.ops.rhcloud.com/nexus/content/groups/public was cached in the 
local repository, resolution will not be reattempted until the update 
interval of nexus has elapsed or updates are forced -> [Help 1] 

それは明らかですOPENSHIFTプラットフォームには今日から何か問題がありました。

0

昨日、私はこれを試してみましたが、それが私の仕事:

アプリケーション.openshift /マーカーディレクトリ内force_clean_buildと呼ばれる空のファイルを作成します。ファイルをコミットし、変更をプッシュします。これにより、.m2リポジトリが削除され、すべての依存関係とプラグインが再度ダウンロードされます。

関連する問題