Yeah, you're totally right. Maven takes care of finding all the necessary dependencies by following your implementations.
There are often version conflicts in Pom files, i.e. sometimes some library has a dependency on library x in version 1.0 and on library y in version 1.0. However, library x has a dependency on library y in version 1.1. Then we have library y in versions 1.0 and 1.1. Will both be downloaded and which one will our project use? And what happens if among our dependencies somewhere in the tree of all dependencies there is an androidx library which is in appinventor but in a different version? The library will not be downloaded? Or maybe it will be downloaded but will not be considered in the project?
Only the higher version will be downloaded and .pom for both.
Maven will not download these libraries at all.
So, I have to download android x libraries also present in app inventor sources to deps folder and run fast build -r in order to override appinventor androidx libraries?
Yeah, however, the filter_mit_classes
attribute might be helpful if youβre unavailable to use the ProGuard.
This function obfuscates or repacks added androidx libraries without proguard?
No, when you enable it, FAST will not add AI2 provided classes into the final jar.
Hmm. But as far as I know extensions do not contain androidx libraries provided by appinventor? They are added with the final APK compilation, and Companion contains them. So I do not understand this function.
Hopefully a slightly easier one for you to answer:
__ _
/ _| __ _ ___| |_
| |_ / _` / __| __|
| _| (_| \__ \ |_
|_| \__,_|___/\__|
- Cleaning build caches
- Increasing Components version
- Compiling Java classes
- local variable mWebView is accessed from within inner class; needs to be declared final at line 117 in ...
- local variable base64Data is accessed from within inner class; needs to be declared final at line 365 in ...
x BUILD FAILED!
How do I declare these as final, no obvious place, that works...
line 117
line 365
Show where you initialize these variables.
Is OK, I figured it out
Just in case anyone else runs across this issue, and as @Patryk_F suggested, I searched my code for the locations where the variables were actually initiated.
In my case
mWebView was on line 84, and base64Data was on line 360.
You will need to do a text search to find the correct locations.
It would be nice to have something like a separate beta so that we can test new versions and at the same time have a stable environment for building extensions.
Before the announcement here, we always test the beta version by the help of a few beta testers. However, I always upload the beta version on GitHub. You could check here a new update is already in under testing. And I announce about the beta update in the support group of FAST CLI (WhatsApp/Telegram).
why this error?
- Increasing Components version
- Compiling Java classes
x C:\Users\DELL\AppData\Local\Fast\accessibility.fast\classes\simple_components.json
Could you please let us know which version of FAST you are currently using? If you are using version 1.1.4 or above, please share the logs.txt
file with us.
Version: 2.0.1 22.11.24.21.37.
log.txt file contains
Fast is initialized.
The installed fast version is: 2.0.1 22.11.24.21.37
JDK version: 1.8
fast create initialized.
Got FAST_HOME from environment variable.
Got 77 libraries.
Coping the default icon.png
Adding the rt.jar to the .classpath to skip the LambdaMetaFactory class missing warning.
Could you please confirm this.
What happens if you try to build the project that's created by default?
An update is available v2.0.2
Date built: 23.11.24.20.35
- Added a few more additional debug info into the
logs.txt
. - Modified the by default created project.
- Compiling
R.class
fromR.txt
for remote AAR dependencies. - This exception is now handled and prints the root cause.
I have two question @JEWEL
- If a library contains some files e.g js or css in assets, will fast also move that to assets of final extension(packed aix).
- How it handle values.xml or .xml files in library resources.
Thanks