Java 为Android项目创建和引用库(使用命令行和gradle)
我需要创建一个使用OpenCV库的Android应用程序,我只想使用命令行(linux)来实现这一点。在开始之前,我想了解一下如何创建使用库的项目,但在引用我创建的示例库时遇到了问题。我可以构建默认的Android HelloWorld项目并在我的设备上运行它,而不会出现问题,我只需要库的帮助 我为应用程序和库创建了根目录和文件夹:Java 为Android项目创建和引用库(使用命令行和gradle),java,android,linux,opencv,gradle,Java,Android,Linux,Opencv,Gradle,我需要创建一个使用OpenCV库的Android应用程序,我只想使用命令行(linux)来实现这一点。在开始之前,我想了解一下如何创建使用库的项目,但在引用我创建的示例库时遇到了问题。我可以构建默认的Android HelloWorld项目并在我的设备上运行它,而不会出现问题,我只需要库的帮助 我为应用程序和库创建了根目录和文件夹: mkdir TestProjectmkdir TestProject/TestAppmkdir TestProject/TestLib 然后我创建了项目和库: an
mkdir TestProject
mkdir TestProject/TestApp
mkdir TestProject/TestLib
然后我创建了项目和库:
android create project--target 1--gradle--gradle version 2.4--name TestApp--path~/Projects/TestProject/TestApp/--activity MyActivity--package com.example.TestApp
android创建lib项目--target 1--gradle--gradle版本2.4--name TestLib--path~/Projects/TestProject/TestLib--package com.example.TestLib
我将“settings.gradle”添加到根目录中,在“settings.gradle”中我有包括“TestApp”、“TestLib”
我不确定这里是否需要build.gradle文件。我还将“TestLib”依赖项添加到“TestApp/build.gradle”文件中:
dependencies {
compile project(':TestLib')
}
如果我尝试使用/TestApp/gradlew assembleDebug
和adb install/TestApp/build/output/apk/TestApp debug.apk
我的项目会生成,我可以在手机上运行应用程序(虽然有两个活动,其中一个不起作用),但我认为这个设置不正确
如果我尝试为TestApp导入MyActivity.java中的库
package com.example.testapp;
import android.app.Activity;
import android.os.Bundle;
import com.example.TestLib;
public class MyActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
我得到这个错误:
/TestProject/TestApp/src/main/java/com/example/testapp/
MyActivity.java:5: error: cannot find symbol
import com.example.TestLib;
^
symbol: class TestLib
location: package com.example
1 error
:TestApp:compileDebugJava FAILED
我猜我没有设置识别库所需的东西。或者我没有正确创建库。我试着按照GoogleAndroid教程从命令行添加一个库,但看起来他们使用的是Ant而不是Gradle。我可能会试着这样做,但我听说格拉德尔应该让我的生活更轻松一些
编辑:
我尝试过使用Ant,但我甚至无法构建项目。在我的项目目录中运行ant debug install
后,我收到以下错误:
BUILD FAILED
/home/steven/Libraries/android-sdk-linux/tools/ant/build.xml:649: The
following error occurred while executing this line:
/home/steven/Libraries/android-sdk-linux/tools/ant/build.xml:694:
Execute failed: java.io.IOException: Cannot run program
"/home/steven/Projects/WorkPlz/${aapt}": error=2, No such file or
directory
我终于能够创建一个库,并在我的Android项目中使用它!以下链接很有帮助: 整个过程让我明白了为什么大多数人只使用Ecipse或Adnroid Studio。但是,如果其他人想尝试这个,我将包括一个链接到我的示例项目。它应该澄清一切是如何运作的 样本项目: 现在我终于可以开始工作了