目前efm
我在 mac 上使用的是set efm=%A\ %#[javac]\ %f:%l:\ %m,%A\ %#[aapt]\ %f:%l:\ %m,%-Z\ %#[javac]\ %p^,%-C%.%#
. 它实际上可以定位错误位置并显示简短的错误信息,但我只能通过切换到终端来获得详细信息。
顺便说一句,efm 在archlinux 上工作得很好。
这是输出:
-compile:
[javac] Compiling 8 source files to /Users/ccheng/workspace_tb/Android_RollingBall/bin/classes
[javac] /Users/ccheng/workspace_tb/Android_RollingBall/src/hongbosb/rollingball/GLDrawable.java:22: incompatible types
[javac] found : void
[javac] required: int
[javac] mEnvProgram = Utils.loadProgram(context, "environment_vertex_shader.glsl", "environment_fragment_shader.glsl");
[javac] ^
[javac] /Users/ccheng/workspace_tb/Android_RollingBall/src/hongbosb/rollingball/EnvironmentGLDrawable.java:15: cannot find symbol
[javac] symbol : constructor GLDrawable()
[javac] location: class hongbosb.rollingball.GLDrawable
[javac] public EnvironmentGLDrawable(Context context) {
[javac] ^
[javac] /Users/ccheng/workspace_tb/Android_RollingBall/src/hongbosb/rollingball/MyRenderer.java:31: cannot find symbol
[javac] symbol : variable context
[javac] location: class hongbosb.rollingball.MyRenderer
[javac] mEnvironment = new EnvironmentGLDrawable(context);
[javac] ^
[javac] 3 errors
以下是我的 vim 错过的内容。
[javac] found : void
[javac] required: int
[javac] mEnvProgram = Utils.loadProgram(context, "environment_vertex_shader.glsl", "environment_fragment_shader.glsl");
[javac] ^
[javac]