1

SpringMVC プロジェクトで Bootstrap と Bootstrap-Datepicker を使用しようとしました: GitHub リポジトリ

次のように、WebJars を介して Bootstrap と Bootstrap-Datepicker の両方を含めようとしています。

<!-- WebJars -->
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>webjars-locator</artifactId>
    <version>0.1</version>
</dependency>
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap</artifactId>
    <version>3.1.0</version>
</dependency>
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap-datepicker</artifactId>
    <version>1.3.0</version>
</dependency>
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>jquery</artifactId>
    <version>1.10.2</version>
</dependency>

pom.xml の bootstrap-datepicker 依存関係をコメント アウトすると、ブラウザーはコンソールに次のようなエラーをスローします。

GET http://localhost:8080/finager/webjars/bootstrap-datepicker/1.3.0/js/bootstrap-datepicker.js 404 (Not Found)

これは期待どおりに機能しています。boostrap-datepicker セクションのコメントを外したままにしておくと、ブラウザはこれも予想どおり、bootstrap-datepicker ファイルを表示し始めます。残念ながら、ブラウザー コンソールは、Bootstrap ファイルが表示されないという同様のエラーをスローし始めます。boostrap-datepicker が何らかの形で Bootstrap をオーバーライドしているようです。

インクルードの順序を変更しようとしましたが、同じ効果が得られました。Maven が datepicker を含めようとしないときに Bootstrap が表示されるため、すべての .jsp ファイル (CSS および JS を含む) は有効であるように見えます。コンパイル後に webjars フォルダーに何が表示されるかを確認する簡単な方法はありますか?

私は非常に混乱しています。インターネット上で有益な情報を見つけることができませんでした。私はこれに一日を費やしてきたので、どんな助けでも大歓迎です。前もって感謝します!

4

1 に答える 1

3

いつものように、質問を投稿した直後に解決策が思い浮かびました。Bootstrap-datepicker が Bootstrap に依存していることを Maven が検出したようです。結果として、異なるバージョンのBootstrapが含まれていたと思います-それですべてが説明されます。

ただし、これが解決策です。

<!-- WebJars -->
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>webjars-locator</artifactId>
    <version>0.1</version>
</dependency>
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap-datepicker</artifactId>
    <version>1.3.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.webjars</groupId>
            <artifactId>bootstrap</artifactId>
        </exclusion>
   </exclusions> 
</dependency>
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap</artifactId>
    <version>3.1.0</version>
</dependency>

Maven のコンパイル後に /webjars ディレクトリ構造を参照する簡単な解決策を知っている人はいますか? これにより、このような問題を防ぐことができます。

于 2014-01-31T13:37:39.113 に答える