如何在库中包含另一个库
How to Include Another Library within a Library
我制作了一个实现 androidx.annotation
的库,但是当我在应用程序中使用该库时,该应用程序无法解析 annotation
。
build.gradle(模块:图书馆)
dependencies {
implementation 'androidx.annotation:annotation:1.0.0'
}
build.gradle(模块:应用程序)
dependencies {
implementation project(':library')
}
MainActivity.java(应用程序)
import androidx.annotation.NonNull;
public class MainActivity extends AppCompatActivity {
// ...
@NonNull
public String getString() {
// ...
}
}
每当我尝试 运行 应用程序时,它都会说找不到 class androidx.annotation.NonNull
。我想在我的图书馆中加入 androidx.annotation
。我该怎么做?
它不起作用的原因可能是您添加依赖项的方式。 Implementation
意味着该依赖项仅对库模块可用和访问,这解释了您面临此问题的原因。
改用api
。这意味着依赖项也将对依赖于此模块的模块可用和可访问。
试试这个:
build.gradle(模块:图书馆)
dependencies {
api 'androidx.annotation:annotation:1.0.0'
}
我制作了一个实现 androidx.annotation
的库,但是当我在应用程序中使用该库时,该应用程序无法解析 annotation
。
build.gradle(模块:图书馆)
dependencies {
implementation 'androidx.annotation:annotation:1.0.0'
}
build.gradle(模块:应用程序)
dependencies {
implementation project(':library')
}
MainActivity.java(应用程序)
import androidx.annotation.NonNull;
public class MainActivity extends AppCompatActivity {
// ...
@NonNull
public String getString() {
// ...
}
}
每当我尝试 运行 应用程序时,它都会说找不到 class androidx.annotation.NonNull
。我想在我的图书馆中加入 androidx.annotation
。我该怎么做?
它不起作用的原因可能是您添加依赖项的方式。 Implementation
意味着该依赖项仅对库模块可用和访问,这解释了您面临此问题的原因。
改用api
。这意味着依赖项也将对依赖于此模块的模块可用和可访问。
试试这个:
build.gradle(模块:图书馆)
dependencies {
api 'androidx.annotation:annotation:1.0.0'
}