Gradle Retrolambda Plugin alternatives and similar packages
Based on the "Other" category.
Alternatively, view Gradle Retrolambda Plugin alternatives based on common mentions on social networks and blogs.
-
FileDownloader
Multitask、MultiThread(MultiConnection)、Breakpoint-resume、High-concurrency、Simple to use、Single/NotSingle-process -
Android Scripting
SL4A brings scripting languages to Android by allowing you to edit and execute scripts and interactive interpreters directly on the Android device. -
AboutLibraries
AboutLibraries automatically collects all dependencies and licenses of any gradle project (Kotlin MultiPlatform), and provides easy to integrate UI components for Android and Compose-jb environments -
android-ocr
DISCONTINUED. An experimental app for Android that performs optical character recognition (OCR) on images captured using the device camera. -
Android Priority Job Queue
A Job Queue specifically written for Android to easily schedule jobs (tasks) that run in the background, improving UX and application stability. -
Tiny Dancer
DISCONTINUED. An android library for displaying fps from the choreographer and percentage of time with two or more frames dropped -
AwesomeValidation
Android validation library which helps developer boil down the tedious work to three easy steps. -
WheelView-Android
DISCONTINUED. Selector with wheel view, applicable to selecting money or other short length values. -
Android-Link-Preview
DISCONTINUED. It makes a preview from an url, grabbing all the information such as title, relevant texts and images. -
JsonToJava
I was fed up with writing Java classes to mirror json models. So I wrote this Java app to automate the process. -
AndroidPermissions
Android M was added to check Permission. but Permission check processing is so dirty. -
Fragment-Switcher
An instance-state saving fragment switcher, intended for use with navigation drawers or tabs. -
sixpack-java
A Java client for the Sixpack A/B testing framework https://github.com/seatgeek/sixpack -
AudioPlayerView
AudioPlayerView is an Android view that loads audio from an url and have basic playback tools. -
UserAwareVideoView
A customized video view that will automatically pause video is user is not looking at device screen!!!!! -
Typography
**DEPRECATED**. Use the native and support library variants instead - https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html. An android library that makes it easy to add custom fonts to edittexts and textviews -
Android Support library
The Android Support Library package is a set of code libraries that provide backward-compatible versions of Android framework API. -
Google Play Services
Library to access Google services, such as account syncing, Google+ (sharing, single sign-on), Google Maps, Location APIs, Google Play Games, Cloud Messaging, Android Device Manager, and others.
InfluxDB - Power Real-Time Data Analytics at Scale
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Gradle Retrolambda Plugin or a related project?
README
Gradle Retrolambda Plugin
This plugin will automatically build your java or android project with retrolambda, giving you lambda goodness on java 6 or 7. It relies on the wonderful retrolambda by Esko Luontola.
Note: The minimum android gradle plugin is 1.5.0
and the minimum gradle plugin is 2.5
.
Usage
Download jdk8 and set it as your default.
Add the following to your build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'me.tatarka:gradle-retrolambda:3.7.1'
}
}
// Required because retrolambda is on maven central
repositories {
mavenCentral()
}
apply plugin: 'com.android.application' //or apply plugin: 'java'
apply plugin: 'me.tatarka.retrolambda'
alternatively, you can use the new plugin syntax for gradle 2.1+
plugins {
id "me.tatarka.retrolambda" version "3.7.1"
}
- There is no step three!
The plugin will compile the source code with java8 and then replace the class files with the output of retrolambda.
Configuration
You can add a block like the following to configure the plugin:
retrolambda {
javaVersion JavaVersion.VERSION_1_6
jvmArgs '-arg1', '-arg2'
defaultMethods false
incremental true
}
javaVersion
Set the java version to compile to. The default is 6. Only 5, 6 or 7 are accepted.include 'Debug', 'Release'
Sets which sets/variants to run through retrolambda. The default is all of them.exclude 'Test'
Sets which sets/variants to not run through retrolambda. Only one of eitherinclude
orexclude
should be defined.jvmArgs
Add additional jvm args when running retrolambda.defaultMethods
Turn on default and static methods in interfaces support. Note: due to a limitation in retrolamba, this will setincremental
to false. The default is false.incremental
Setting this to false forces all of your class files to be run through retrolambda instead of only the ones that have changed. The default is true.
Using a Different Version of the retrolambda.jar
The default version of retrolambda used is
'net.orfjackal.retrolambda:retrolambda:2.5.6'
. If you want to use a different
one, you can configure it in your dependencies.
dependencies {
// Latest one on maven central
retrolambdaConfig 'net.orfjackal.retrolambda:retrolambda:+'
// Or a local version
// retrolambdaConfig files('libs/retrolambda.jar')
}
Deprecated Features
If you are running with java 6 or 7 you should really consider updating. However, you may use the below configuration instead.
Set the environment variable JAVA8_HOME
to point to the java 8 jdk. Alternatively, you can set the
jdk
property.
retrolambda {
jdk System.getenv("JAVA8_HOME")
}
You can force unit tests to be run with an older version of java by setting
JAVA5_HOME
/JAVA6_HOME
/JAVA7_HOME
or with the oldJdk
property.
retrolambda {
oldJdk System.getenv("JAVA6_HOME")
}
Android Studio Setup
Add these lines to your build.gradle
to inform the IDE of the language level.
android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Proguard
This plugin is fully compatible with proguard (since v2.4.0
). In your proguard file, add
-dontwarn java.lang.invoke.*
-dontwarn **$$Lambda$*
Known Issues
Lint fails on java files that have lambdas.
First try updating to the latest version of the android gradle plugin. Newer versions of lint are compatible with java 8 sources. If you can't for some reason, you can still use the experimental fork to fix the issue.
Using Google Play Services causes retrolambda to fail
Version 5.0.77
contains bytecode that is incompatible with retrolambda. This should be fixed in
newer versions of play services, if you can update, that should be the preferred solution. To work
around this issue, you can either use an earlier version like 4.4.52
or add -noverify
to the jvm
args. See orfjackal/retrolambda#25 for more
information.
retrolambda {
jvmArgs '-noverify'
}
Updates
All updates have moved to the CHANGELOG.
License
Copyright 2013 Evan Tatarka
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*Note that all licence references and agreements mentioned in the Gradle Retrolambda Plugin README section above
are relevant to that project's source code only.