在我的一些Android项目中,我发现使用新的Jack编译器后构建速度变得非常缓慢。我需要使用Java 8的特性,如lambda表达式。
但是长时间的构建时间有点令人不安。因此,我设置了一个新的Android项目。它只包含一个
除了布局文件中只包含一个
我已经在我的gradle.properties文件中管理了Java堆大小:
但是长时间的构建时间有点令人不安。因此,我设置了一个新的Android项目。它只包含一个
MainActivity
,其中有一个按钮,可以在您点击时触发。package de.xappo.myapplication;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
Toast.makeText(MainActivity.this, "Button clicked!", Toast.LENGTH_LONG).show();
}
});
}
}
除了布局文件中只包含一个
TextView
和一个 Button
,并位于一个 RelativeLayout
中,没有其他内容。
正如您在图片中所看到的,所有的Jack gradle任务加在一起需要约75秒钟的时间。这正常吗?没有使用Jack的情况下,整个示例应用程序的构建时间少于22秒。因此,这种巨大的差异是否正常?我已经在我的gradle.properties文件中管理了Java堆大小:
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
还有什么方法可以提高jack编译性能吗?或者你是否知道有关jack改进构建时间的任何更新计划?