質問: apache poi(バージョン3.17)を利用してエクセル出力しようといるのですが、The method setBorderBottom(short) in the type CellStyle is not applicable for the arguments (BorderStyle)と表示されてしまい、コンパイルが出来ません。 poiのドキュメントを見る限りsetBorderBottomの引数はBorderStyleとなっているので、バージョンが食い違っている、ビルドパスが間違っている等を考え試しているのですが、うまくいかない状態です。 状況 1.マスターブランチにpoi2.5.1-final.jarが存在した状態 ↓ 2.エクセル出力のブランチへ変更、ビルドパスからpoi2.5.1-final.jarを削除、poi-3.17を追加 ↓ 3.出力処理作成(この時点ではコンパイル可能) ↓ 4.一時的に別ブランチへ変更 ↓ 5.エクセル出力のブランチへ再度変更 ↓ 6.コンパイルエラー 試したこと ・ビルドパスを再設定(poi2.5.1を削除、poi3.17を追加) ・Eclipseを再起動 ・ワークスペース再作成 など わかっていないこと ・3.の時点でコンパイルできる状態のビルドパスにどのjarを入れていたか正確には覚えていない。 何かお分かりになる方、お力をお貸しいただけないでしょうか。 ※追記「poi2.5.1を削除、poi3.17を追加」
回答: > > The method setBorderBottom(short) in the type CellStyle is not applicable for the arguments (BorderStyle) > > > このエラーは、`short`型の引数を渡すべきところで、`BorderStyle`型の引数を渡しているために発生しています。また、`setBorderBottom(BorderStyle)`はPOI 3.15で追加されていて、setBorderBottom(short)`がPOI 3.17から削除されています。つまり、古いバージョンのPOIを使用しているのに、新しいメソッドを呼び出すような実装をしているということになります。 Eclipseでコンパイルエラーとなっているプロジェクトを右クリックし、ビルドパスを見直してみて下さい。