質問: eclipse内のWebcontentのWEB-INFのlibの中にh2-1.9.190jar.というファイルを入れたのですが、コードは、コンパイルエラーになってしまいます。 他にもやるべき作業があるのでしょうか? どうぞよろしくお願いします。 以前にcon=DriverManager.getConnection("jdbc:h2:file:/Users/ta/Documents/networkspace/d/h2data.dat"); という場所を見つけ出したのですが、どういった方法で見つけたのかを忘れてしまいました。 ファイル名の指定が間違えているのでしょうか? eclipseでのコードは import java.sql.*; public class Main{ //コンパイルエラー try{ Class.forName("org.h2.Driver"); }catch(ClassNotFoundException e){//コンパイルエラー e.printStackTrace(); } Connection con=null; try{ con=DriverManager.getConnection("jdbc:h2:file:/Users/ta/Documents/networkspace/d/h2data.dat"); }catch(SQLException e){//コンパイルエラー e.printStackTrace(); }finally{ if(con!=null){ try{ con.close(); }catch(SQLException e){ e.printStackTrace(); } } } }//コンパイルエラー です。 赤波線のあるコンパイルエラーの場所にはコメントを記入しました。 どうぞよろしくお願いします。
回答: 質問する前に、コンパイルエラーの内容をよく読んでほしいのですが、Syntax Error(文法エラー)になっているのではないでしょうか? このエラーは、jar をどこに置いたかは関係なくて、単に、Java のプログラムとして、構文が間違っていることを示しています。 以下のように、Mainクラスの中に、メソッドを追加してください。 ``` import java.sql.*; public class Main { public static void main(String[] args) { try { Class.forName("org.h2.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } Connection con = null; try { con = DriverManager.getConnection("jdbc:h2:file:/Users/ta/Documents/networkspace/d/h2data.dat"); } catch (SQLException e) { e.printStackTrace(); } finally { if (con != null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } } } ``` あと、質問を入力、編集する時の入力欄の上に > というマークがあると思います。Java などのコードを入力する時は、まず、そのボタンを押して、表示された記号の間に、コードを貼り付けてください。そうすると、コードがすごく読みやすくなりますよ。