- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了一个 Android 库,当我的客户尝试将其导入到名为 mylocusmapsapplication 的项目的模块级 build.gradle 文件中时,该库无法链接。客户的应用程序中几乎没有任何内容,它是在 Android Studio 中通过转到 File > New > New Project... > Empty Activity 创建的。然后我们简单地将我的库添加为依赖项。但是当他们尝试编译时,它给出了以下错误:
/Users/michaelosofsky/.gradle/caches/transforms-2/files-2.1/9f0df0bf18c337fe1883aef0ec2959c5/jetified-locuslabs-android-sdk-3.0.1/res/layout/ll_levels_selector_coordinator.xml:9:AAPT: error: attribute layout_behavior (akacom.example.mylocusmapsapplication:layout_behavior) not found.
implementation "androidx.coordinatorlayout:coordinatorlayout:1.1.0"
但是,随后我们收到了一个新错误:
/Users/michaelosofsky/.gradle/caches/transforms-2/files-2.1/9f0df0bf18c337fe1883aef0ec2959c5/jetified-locuslabs-android-sdk-3.0.1/res/layout/ll_levels_selector_coordinator.xml:9:AAPT: error: resource string/bottom_sheet_behavior (akacom.example.mylocusmapsapplication:string/bottom_sheet_behavior) notfound.
implementation "com.google.android.material:material:1.3.0-alpha02"
然后客户能够编译、链接和运行他们的项目。
implementation "androidx.coordinatorlayout:coordinatorlayout:1.1.0"
implementation "com.google.android.material:material:1.3.0-alpha02"
对此:
api "androidx.coordinatorlayout:coordinatorlayout:1.1.0"
api "com.google.android.material:material:1.3.0-alpha02"
我重新发布了我的库,但是当我的客户在没有上述解决方法的情况下自行尝试我的库的新版本时,他们看到了相同的错误消息。
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/ll_darkDarkTranslucent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/llLevelSheetLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@null"
app:layout_behavior="@string/bottom_sheet_behavior">
我相信
app:layout_behavior
属性在 :coordinatorlayout: 库中定义,其值
@string/bottom_sheet_behavior
在 :material: 库中定义。
java.lang.NoClassDefFoundError
在运行时。
implementation "androidx.coordinatorlayout:coordinatorlayout:1.1.0"
implementation "com.google.android.material:material:1.3.0-alpha02"
implementation "com.mapbox.mapboxsdk:mapbox-android-sdk:9.0.0"
implementation "com.squareup.retrofit2:retrofit:2.9.0"
implementation "com.squareup.retrofit2:converter-gson:2.9.0"
implementation "org.kamranzafar:jtar:2.2"
implementation "org.tukaani:xz:1.5"
implementation "com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2"
implementation "me.xdrop:fuzzywuzzy:1.2.0"
implementation "androidx.fragment:fragment-ktx:1.3.0-alpha07"
我能够找到一些关于
retrofit
的类似问题的引用资料。图书馆,有人使用与我相同的解决方法:
https://github.com/square/retrofit/issues/3266#issuecomment-632362066
最佳答案
感谢@pavneet-singh,我们找到了解决这个问题的方法。 @megasoft78 是正确的,根本原因是我的库被错误地打包。这是更正后的 module-level build.gradle file对于我的图书馆:
// This must go at the top of build.gradle
plugins {
id 'maven-publish'
}
// This can go anywhere in the build.gradle
// I have removed my values wherever it says <MY_XXX> below
project.afterEvaluate {
publishing {
// How to package the library
publications {
library(MavenPublication) {
from components.release
groupId = '<MY_GROUP_ID>'
artifactId = '<MY_ARTIFACT_ID>'
version = '<MY_ARTIFACT_VERSION_NUMBER>'
}
}
// Where to publish the library (GitLab Package Registry in my case)
repositories {
maven {
url "https://gitlab.com/api/v4/projects/<MY_GITLAB_GROUP_ID>/packages/maven"
name "GitLab"
credentials(HttpHeaderCredentials) {
name = 'Job-Token'
value = System.getenv("CI_JOB_TOKEN")
}
authentication {
header(HttpHeaderAuthentication)
}
}
}
}
}
关键变化是
publications
堵塞。以下不正确的 block 是导致问题的原因:
publications {
library(MavenPublication) {
groupId = '<MY_GROUP_ID>'
artifactId = '<MY_ARTIFACT_ID>'
version = '<MY_ARTIFACT_VERSION_NUMBER>'
artifact bundleReleaseAar
}
}
注意我正在使用
GitLab's Package Registry而不是
JitPack.io因为当我成为付费客户后,JitPack.io 的客户服务就没有响应了。
关于android - 如何打包我的 Android 库,以便我的客户不会遇到像 "AAPT: error: attribute layout_behavior"这样的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63961378/
我有一个名为 flightbooking 的表。该表由字段组成,包括标有“R”或“C”的状态、已保留和已取消。 我想弄清楚的是允许删除状态为“C”的记录,但如果下一行的状态为“R”,则不应删除。 [编
关闭。这个问题是opinion-based .它目前不接受答案。 想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它. 1年前关闭。 Improve this
研究 PHP/Gearman。我试图了解 Gearman 服务器/进程如何确定什么构成“有效”客户端。 在我看过的文档中,文档显示了许多连接到 Gearman 服务器的客户端。但是,我没有找到任何描述
HBase案例:客户/订单 假设HBase 用于存储客户和订单信息。有两种核心记录类型被摄取:客户记录类型和订单记录类型。 客户记录类型将包含您通常期望的所有内容: 客户编号 客户名称
当运行配方时出现问题并且客户端运行中途挂起时,安装的 Chef 客户端将无法使用。 然后,您可以退出机器、重新启动、清理 Chef pid 文件等,但每次启动 Chef 客户端时都会显示以下消息: C
我正在用Java开发游戏,目前进展顺利。我想尽早实现多人游戏,因此我在此基础上进行构建,而不是在具有大量不同功能的情况下将整个游戏移植到多人游戏中。 我想使其成为客户端/服务器应用程序。 现在,我确定
我正在尝试以编程方式修改 magento 上的现有客户数据,但出现错误,希望有人可以帮助我。 require_once('../app/Mage.php'); ini_set("error_repor
我正在学习 JQuery。我需要创建一个自定义控件。该控件基本上将呈现一些 HTML。有时,我只想获取 HTML。我希望使用以下语法: // Put generated html inside of
我正在尝试以编程方式修改 magento 上的现有客户数据,但出现错误,希望有人可以帮助我。 require_once('../app/Mage.php'); ini_set("error_repor
我想选择表格的一行并插入到另一个现有表格中。(我用的是php和MySql,两张表除了id和timestamp外,其他列都是一样的) 我试着做一个手推车。我希望当有人付款时,从“carret”中选择该客
我想使用 JXTA 实现客户端-服务器架构。服务器部分的配置也将是 3 层。有谁知道开始这个项目的好地方吗? 提前致谢。 最佳答案 JXTA 处理 p2p 连接。这与客户端-服务器方法相反。 据我了解
我需要创建一个 Stripe 客户并为他们订阅一个计划。我查看了 Stripe.js,似乎虽然您可以获得 token ,但除此之外它没有提供任何东西。有可用于节点和 PHP 的库,但为什么不能用于 J
我有一个数据库设计要求,它变得越来越复杂,我需要找出最佳的处理方法。 目前,我有“联系人”,也有“公司”。一个公司可以有多个联系人,但一个联系人只能属于一个公司。这形成了明显的 1:n 关系。但是,联
http://ecc.galengrover.com/programs/facility-rentals/ 在那个页面上,只有那个页面我有一个奇怪的问题。在内容框上方,“所有区域”一词出现在其他文本的
所以,我让这个 CSS 预加载器正常工作。但是,我在将其添加到我的网站时遇到了一些困难。有人可以帮助我理解代码的实现,以允许预加载器成为网站加载前查看的第一个元素。此时预加载器将淡出。预加载器的代码如
考虑以下场景: 有一个 Windows 服务托管一个 WCF 服务。 WCF 服务在客户端和位于不同物理机器上的 AppFabric 服务器之间提供接口(interface)。它检索对象,对其进行计算
当前端的订单历史页面 (*/sales/order/history/) 只显示一条短消息时,这个问题首先被意识到:您没有下订单。 经过一番调试,发现问题出在这个函数上: Mage::getSingle
我的公司是一些项目的定制开发商店,有些较大,有些较小。目前,我们通过电子邮件处理所有客户通信。所以我们通过电子邮件发送设计文档,他们将其标记并发送回去。然后我们推出了他们产品的测试版,他们通过电子邮件
我有一个小部件 View 如下: 公共(public)类 RemoteNumView 扩展了 FrameLayout { 我如何调用 Roboguice 就像在 RoboActivity 中一样?如下
我有一个包含客户编号、客户名称和商品编号的 MySQL 表。它比这稍微复杂一点,但我尝试稍微简化它并删除敏感数据。 当前表 Unique Customer Number | Customer Name
我是一名优秀的程序员,十分优秀!