Spring 4.3.9 で Velocity 1.7.x を Velocity 2.0.x にアップグレードする際の問題

1: Spring の  spring-context-support エラー java.lang.NoClassDefFoundError: org/apache/velocity/runtime/log/CommonsLogLogChute

Spring が Velocity 2.0.x をサポートするようにアップグレードするまで待つか、Spring のソース コードを自分で変更してください

速度の初期化ログプロセス全体:

    1. new RuntimeInstance()、属性 Log log = new Log()、デフォルトで LogChute として HoldingLogChute() を作成します (LogChute は一時的にログをメモリ オブジェクトに記録します)
    2. RuntimeInstance.init() による速度システムの初期化
    3. initializeProperties() を順番に呼び出し、velocity.properties のデフォルト設定を読み取り、カスタム プロパティをマージします。
    4. 順番にinitializeLog()を呼び出し、LogManager.updateLog()を呼び出し、ログを初期化します。
    5. LogManager.createLogChute() は、最初に runtime.log.logsystem 構成を読み取り、カスタム LogChute インスタンス オブジェクトがあるかどうかを確認し、存在する場合はそれを直接使用して返します。
    6. 対応する LogChute インスタンス オブジェクト構成がない場合は、 runtime.log.logsystem.class を読み続けて、ログシステム構成があるかどうかを確認します。ログシステム構成は、前のクラス図の LogChute と LogSystem のペアの実装クラスです。
  1.         LogChute 実装クラスを順番に 1 つずつロードし、クラスが正常にロードされたら初期化してリターンします
    1. LogManagerはcreateLogChuteの場合、システム起動時にHoldingLogChuteで記録した内容を新しいLogChuteに出力し、最終的にログの初期化を完了します。

 

2: Velocity.properties を変更する

runtime.conversion.handler = なし
space.gobbling = bc

おすすめ

転載: blog.csdn.net/oligaga/article/details/132629730