文件存在时,Android SDK"没有这样的文件"

Mar*_*inM 1 linux android intellij-idea linux-mint android-sdk-tools

我刚从Windows迁移到Linux Mint.我下载了SDK并开始使用它.AVD经理正在工作,我甚至可以从intellij开始,但是当我要求推出一些设备它说:

为AVD'Pakon'启动模拟器

无法启动模拟器:无法运行程序"/ home/marcinm/Programy/sdk/tools/emulator":error = 2,没有这样的文件或目录

虽然我检查了这个目录中有这样的文件.

此外,当我想编译项目时,错误消息对我说:

错误:android-apt-compiler:无法运行程序"/home/marcinm/Programy/sdk/build-tools/19.1.0/aapt":error = 2,没有这样的文件或目录

虽然此目录中也有aapt文件.

任何人都知道如何解决它?

更新:

我找到了解决方案.必须提供包裹.我通过将代码更改为:

    @Test
    fun simpleGenerationTest() {
        val beforeProcess = "com.example.activitystarter.MainActivity" to """
package com.example.activitystarter;

import android.app.Activity;
import activitystarter.MakeActivityStarter;

@MakeActivityStarter
public class MainActivity extends Activity {}
        """

        val afterProcess = "com.example.activitystarter.MainActivityStarter" to """
package com.example.activitystarter;

import android.content.Context;
import android.content.Intent;
import android.support.annotation.UiThread;

public class MainActivityStarter {
    @UiThread
    public static void fill(MainActivity activity) {
    }

    @UiThread
    public static void start(Context context) {
    Intent intent = new Intent(context, MainActivity.class);
    context.startActivity(intent);
    }

    @UiThread
    public static void startWithFlags(Context context, int flags) {
    Intent intent = new Intent(context, MainActivity.class);
    intent.addFlags(flags);
    context.startActivity(intent);
    }

    @UiThread
    public static Intent getIntent(Context context) {
    Intent intent = new Intent(context, MainActivity.class);
    return intent;
    }
}
        """

        processingComparator(beforeProcess, afterProcess)
    }
Run Code Online (Sandbox Code Playgroud)

Mol*_*Ice 8

你在运行64位版本吗?根据这里,您似乎需要安装一些32位库:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386
Run Code Online (Sandbox Code Playgroud)