• 7
name

A PHP Error was encountered

Severity: Notice

Message: Undefined index: userid

Filename: views/question.php

Line Number: 191

Backtrace:

File: /home/prodcxja/public_html/questions/application/views/question.php
Line: 191
Function: _error_handler

File: /home/prodcxja/public_html/questions/application/controllers/Questions.php
Line: 433
Function: view

File: /home/prodcxja/public_html/questions/index.php
Line: 315
Function: require_once

I am trying to use okbuck with Android Studio 3.3, but I got stuck on AndroidX. When I convert all dependencies to androidx and set:

android.enableJetifier=true
android.useAndroidX=true

With running I get the following error:

./buckw install --run //app:bin_debug


Exception in thread "main" java.lang.IllegalArgumentException: The given artifact contains a string literal with a package reference 'android.support.design.widget' that cannot be safely rewritten. Libraries using reflection such as annotation processors need to be updated manually to add support for androidx. 
at com.android.tools.build.jetifier.processor.transform.bytecode.CoreRemapperImpl.rewriteString(CoreRemapperImpl.kt:91)
        at com.android.tools.build.jetifier.processor.transform.bytecode.asm.CustomRemapper.mapValue(CustomRemapper.kt:75)
        at org.objectweb.asm.commons.ClassRemapper.visitField(ClassRemapper.java:113)
        at org.objectweb.asm.ClassReader.readField(ClassReader.java:883)
        at org.objectweb.asm.ClassReader.accept(ClassReader.java:694)
        at org.objectweb.asm.ClassReader.accept(ClassReader.java:500)
        at com.android.tools.build.jetifier.processor.transform.bytecode.ByteCodeTransformer.runTransform(ByteCodeTransformer.kt:39)
        at com.android.tools.build.jetifier.processor.Processor.visit(Processor.kt:366)
        at com.android.tools.build.jetifier.processor.archive.ArchiveFile.accept(ArchiveFile.kt:41)
        at com.android.tools.build.jetifier.processor.Processor.visit(Processor.kt:348)
        at com.android.tools.build.jetifier.processor.archive.Archive.accept(Archive.kt:70)
        at com.android.tools.build.jetifier.processor.Processor.transformLibrary(Processor.kt:344)
        at com.android.tools.build.jetifier.processor.Processor.transform(Processor.kt:207)
        at com.android.tools.build.jetifier.processor.Processor.transform$default(Processor.kt:194)
        at com.android.tools.build.jetifier.standalone.Main.run(Main.kt:147)
        at com.android.tools.build.jetifier.standalone.Main$Companion.main(Main.kt:101)
        at com.android.tools.build.jetifier.standalone.Main.main(Main.kt)

I can even comment out all dependencies, delete-reinit okbuck (so no cache) and with jetifier still on, error keeps popping up.

I use okbuck version 0.46.2, jetifier allegedly working since 0.44.1.

    • I have not. I suppose a solution would be wait for all dependencies to turn to androidx (or jetify them ourselves on private maven) and turn off jetifier.
    • i am facing some issue with okBuck. buckw command is not working. Included dependencies NDK and watchman as mentioned in the okBuck github. Created buck wrapper but the buckw commands are not getting recognised in android studio terminal. Any ideas would be really helpful.

I had run into similar issue as you do when I was working on my okbuck sample project. And I have resolved this issue by adding a jetifier block in root level build.gradle. Please refer to the pull request here that has fixed the AndroidX issue.

This is the whole code block related to okbuck.

okbuck {

    buildToolVersion = '28.0.3'

    lint {
       disabled = true
    }
    externalDependencies {
        downloadInBuck = false
    }
    jetifier {
        aarOnly = true
    }
}
  • 1
Reply Report