ClassNotFoundException Class.forName() в Android

try {
    String url = "jdbc:sqlserver://Aman\\SQL12;databaseName=P2C_Android";
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    conn = DriverManager.getConnection(url, "sa", "aman");
    String sql =
        "select * from UserTable " +
        "where username='" + username.getText().toString() +
        "' and password='" + password.getText().toString() + "'";
    Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery(sql);
    if (rs != null && rs.next())
        Toast.makeText(getApplicationContext(), "Redirecting...",
            Toast.LENGTH_SHORT).show();
    else {
        Toast.makeText(getApplicationContext(), "Wrong Credentials",
            Toast.LENGTH_SHORT).show();
        attempts.setBackgroundColor(Color.RED); 
        counter-- ;
        attempts.setText(Integer.toString(counter));
        if(counter == 0)
            login.setEnabled(false);
    }

}
catch (Exception ex) {
    Toast.makeText(getApplicationContext(),
        ex.getMessage(), Toast.LENGTH_SHORT).show();
}

Он говорит, что класс не найден, даже когда я вижу, что класс присутствует в sqljdbc.jar что я добавил.
Я пытаюсь получить доступ к базе данных из приложения Android.

1 ответ

Решение

Убедитесь, что у вас есть только одна версия JAR.

Для бывших

Вы можете иметь оба sqljdbc.jar или же sqljdbc4.jar в пути к классам.

Другие вопросы по тегам