草庐IT

java - Gradle 从 lib 中排除 java 类,替换为自己的类以避免重复

在AndroidStudio中,有一个特定的文件(src/org/luaj/vm2/lib/jse/JavaMethod.java),我需要从通过Gradle拉入的包中覆盖它(dependencies{compile'org.luaj:luaj-jse:3.0.1'})。我使用完全相同的路径将文件复制到我的源目录中并对其进行了更改。这对于使用它的单个JUnit测试用例来说工作正常。它也看起来正在正常编译我的项目(目前无法轻松确认)。但是,当我尝试通过配置ProjectType="AndroidTests"一次运行所有测试时,我得到了Error:Errorconvertingbyteco

android - 从 Android Studio 的全局搜索中删除 Dagger 生成的类?

真是气死人了。由于Dagger2,我需要更多时间来寻找一些类(class)。 最佳答案 如果您谈论的是生成的MembersInjector和Factory类:MyClass_MembersInjector.javaMyClass_Factory.java您可以通过将它们添加到File/Settings/Editor/FileTypes并将适当的通配符添加到Ignorefilesandfolders编辑文本:*_MembersInjector.java;*_Factory.java;会导致大部分生成的类被忽略:之前:之后:如果您甚至不

android - Dx 不支持的类文件版本 52.0 ...在解析 com/example/test1/BuildConfig.class 时

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭6年前。Improvethisquestion尝试使用JDK1.8和eclipseneon构建项目时出现以下错误:[2016-07-0302:40:59-Test1]DxPARSEERROR:[2016-07-0302:40:59-Test1]Dxunsupportedclassfileversion52.0...whileparsingcom/example/test1/BuildConfig.class[2016-07-0302:40:5

android - 如何动态更改 fragment 的类

您好,我有一个包含两个fragment的linearLayout,我将带有代码的选项卡添加到此布局。我想要的是,当我单击tab1时,可以从指定的类中分段填充自身,但在tab2中,我想将此类更改为另一个类。谢谢 最佳答案 更改在xml布局中为并以编程方式添加fragment:FragmentManagerfragmentManager=getFragmentManager()FragmentTransactionfragmentTransaction=fragmentManager.beginTransaction();Example

Android - 将@aar 包中的类脱糖

我正在尝试从我的库构建一个@aar包,以用作客户端项目中的依赖项。在我使用的库模块中:compileOptions{sourceCompatibilityJavaVersion.VERSION_1_8targetCompatibilityJavaVersion.VERSION_1_8}我想在达到客户端依赖性之前对代码进行脱糖并使其与Java7兼容。这意味着我实际上需要提供一个@aar包,其中Lambda函数和所有其他Java8相关功能已经移植到Java7字节码。我面临的问题是在库模块上使用:applyplugin:'com.android.library'不执行脱糖任务,这意味着字节码

java - 在 Gradle 的 Java 插件的 compileTestJava 中找不到为 Dagger 2 的组件生成的类

好吧,我正在迁移我的Android项目以使用CleanArchitecure:https://github.com/android10/Android-CleanArchitecture这意味着我的部分代码在域模块中(纯Java,不依赖于Android)。对于这个项目,我使用Dagger2,它使用注释处理器生成源代码(在编译期间)。我的项目有以下Gradle配置:applyplugin:'java'sourceCompatibility=1.7targetCompatibility=1.7configurations{provided}sourceSets{main{compileCl

android - ClassLoader 来替换一个预加载的类?

一般问题:是否可以使用ClassLoader替换预加载(由系统加载,例如在Android的%android%/frameworks/base/preloaded-classes文件中找到)类?具体:在我的应用程序中创建WebView之前,我试图使用DexClassLoader替换在android.net.*中找到的类。我可以获得一个Class对象,但是getMethods()例如给了我一个我期望在未修改/原始类实现中的数组。这是因为预加载类系统吗?基本设置和伪代码:修改android.net.*类,增加一些测试方法等。编译并得到classes.dexjarcfmytest.jarcla

android - 默认情况下在gradle中为从proto文件生成的类注册一个包,而不是在proto文件中

在我的android应用程序中,我使用原型(prototype)文件。例如,我有原型(prototype)文件Stats.protosyntax="proto3";packagecom.me.test;messageStat{stringa=1;stringb=2;stringc=3;stringd=4;}我需要在每个proto文件本身中注册包,这很不舒服,因为我有很多文件。我想在gradle中注册默认包,例如,'packagecom.me.test',它使用我创建的每个文件。我找到了solution在javanano中nano{proto{//Selectsbetween--java

android - 方向更改时的类转换异常 (Android)

我有一个由选项卡Activity托管的Activity。当我更改屏幕方向时,我的应用程序崩溃了。02-1421:01:35.825:E/AndroidRuntime(9424):java.lang.RuntimeException:UnabletostartactivityComponentInfo{com.example.testapp/com.example.testapp.MainActivity}java.lang.ClassCastException:android.view.AbsSavedState$1cannotbecasttoandroid.widget.AbsLis

java - 如何删除 .jar 文件中的类文件并用我自己的实现更改它

这个问题在这里已经有了答案:Updating.classfileinjar(11个答案)关闭9年前。所以,我有第三方库,它是一个.jar文件。那个jar里有一些类。问题是,那个.jar中的一个类中有一个错误。我知道它是因为我可以反编译jar文件,查看java代码,这是我非常确定的,那个类是我程序错误的来源。想法是,我删除类并用我自己的类替换它,但我不知道如何。