渐变显示兼容性错误



我创建了android应用程序。我想显示我的aws-mysql数据库中的数据。我写了以下代码:

package com.example.yash.car2;
import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import  java.sql.*;

public class MainActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}

public Connection CreateDBconn()
{
try
{
String DRIVER_NAME = "com.mysql.jdbc.Driver";
String HOST_NAME = "firstdb.cqmpw4u1tyz3.us-west-2.rds.amazonaws.com";
String PORT_NUMBER = "3306";
String DB_NAME = "test_master";
String USER_NAME = "*****";
String PASSWORD = "*****";
String URL="jdbc:mysql://firstdb.cqmpw4u1tyz3.us-west-2.rds.amazonaws.com/test_master";
Class.forName(DRIVER_NAME);
Connection conn =   DriverManager.getConnection(URL,USER_NAME,PASSWORD);
return conn;
}
catch(Exception e)
{
e.printStackTrace();
}
return null;
}
public void init() {
try
{
Connection c=CreateDBconn();
String query="SELECT * FROM STUD";
Statement st=c.createStatement();
ResultSet rs=st.executeQuery(query);
TableLayout stk = (TableLayout) findViewById(R.id.TL);
TableRow tbrow0 = new TableRow(this);
TextView tv0 = new TextView(this);
tv0.setText(" Sl.No ");
tv0.setTextColor(Color.WHITE);
tbrow0.addView(tv0);
TextView tv1 = new TextView(this);
tv1.setText(" Last Name ");
tv1.setTextColor(Color.WHITE);
tbrow0.addView(tv1);
TextView tv2 = new TextView(this);
tv2.setText(" First Name ");
tv2.setTextColor(Color.WHITE);
tbrow0.addView(tv2);
TextView tv3 = new TextView(this);
tv3.setText(" Age ");
tv3.setTextColor(Color.WHITE);
tbrow0.addView(tv3);
TextView tv4 = new TextView(this);
tv4.setText(" Branch ");
tv4.setTextColor(Color.WHITE);
tbrow0.addView(tv4);
stk.addView(tbrow0);
while (rs.next()) {
TableRow tbrow = new TableRow(this);
TextView t1v = new TextView(this);
t1v.setText(rs.getInt("id"));
t1v.setTextColor(Color.WHITE);
t1v.setGravity(Gravity.CENTER);
tbrow.addView(t1v);
TextView t2v = new TextView(this);
t2v.setText(rs.getString("LastName"));
t2v.setTextColor(Color.WHITE);
t2v.setGravity(Gravity.CENTER);
tbrow.addView(t2v);
TextView t3v = new TextView(this);
t3v.setText(rs.getString("FirstName"));
t3v.setTextColor(Color.WHITE);
t3v.setGravity(Gravity.CENTER);
tbrow.addView(t3v);
TextView t4v = new TextView(this);
t4v.setText(rs.getInt("Age"));
t4v.setTextColor(Color.WHITE);
t4v.setGravity(Gravity.CENTER);
tbrow.addView(t4v);
TextView t5v=new TextView(this);
t5v.setText(rs.getString("Branch"));
t5v.setTextColor(Color.WHITE);
t5v.setGravity(Gravity.CENTER);
tbrow.addView(t5v);
stk.addView(tbrow);
}}
catch (Exception e)
{
e.printStackTrace();
}
}}

我的代码显示以下错误:

1:错误:将字节码转换为dex时出错:原因:dex无法解析版本52字节代码。这是由具有已使用Java 8或更高版本编译。如果您正在使用"java"库子模块中的gradle插件add targetCompatibility="1.7"sourceCompatibility=该子模块的build.gradle文件的"1.7"。

2.错误:任务":app:transformClassesWithDexForDebug"的执行失败。

com.android.build.api.transform.TransformException:java.lang.RuntimeException:com.android.ide.common.prrocess.ProcessException:java.util.courrent.ExecutionException:com.android.ide.common.prrocess.ProcessException:返回dex的代码1处理

我对这一切都是数据库的东西很陌生。我想问题出在导入java.sql的某个地方,但我并没有得到任何解决方案。

请帮忙!

您需要使用Java 8,因为您的代码依赖于Java 8的依赖关系。

android {
compileSdkVersion 26
buildToolsVersion "26.0.2"
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}

也使用最新的gradle插件。

classpath 'com.android.tools.build:gradle:3.3.3'

最新更新