前提・実現したいこと
JavaでWebシステムを作っています。開発環境とリリース環境で使用するOracleDBのバージョンが異なるので、Javaソースやpom.xmlを書き換えることなく、mvnコマンドのオプションだけでJDBCドライバを切り替え、warファイルをインストールしたいです。profile要素やactivation要素を使うところまでは分かったのですが、dependency要素が下記だけではなく多くあるので、重複記述なくpom.xmlを書こうとして詰まってしまいました。もっとも、OracleDBのJDBCドライバはMavenセントラルリポジトリにないので、mvnコマンドでJDBCドライバを手動インストールしなければならず、手間がそれほど軽減されるわけではないのですが。Javaからの接続は環境変数で切り替えてうまくいっています。よろしくお願いします。
発生している問題・エラーメッセージ
<artifactId>${jdbc.artifactId}</artifactId>のところで文法エラーになります。
該当のpom.xml(抜粋)
xml
1 <profiles> 2 <profile> 3 <id>develop</id> 4 <activation> 5 <activeByDefault>true</activeByDefault> 6 </activation> 7 8 <properties> 9 <jdbc.artifactId>ojdbc6_g</jdbc.artifactId> 10 <jdbc.version>11.2.0</jdbc.version> 11 </properties> 12 </profile> 13 14 <profile> 15 <id>release</id> 16 <properties> 17 <jdbc.artifactId>ojdbc8_g</jdbc.artifactId> 18 <jdbc.version>18.4.0</jdbc.version> 19 </properties> 20 </profile> 21 22 </profiles> 23 24 <dependencies> 25 <dependency> 26 <groupId>oracle</groupId> 27 <artifactId>${jdbc.artifactId}</artifactId> 28 <version>${jdbc.version}</version> 29 </dependency> 30 31 </dependencies> 32
補足情報(FW/ツールのバージョンなど)
Apache Maven 3.6.3、Eclipse 4.6.2
開発環境:Oracle Database Express Edition 11g
リリース環境:Oracle Database Express Edition 18c
回答1件
あなたの回答
tips
プレビュー