Tuweni: Apache Core Libraries for Java (& Kotlin)
See our web site for details on the project.
Tuweni is a set of libraries and other tools to aid development of blockchain and other decentralized software in Java and other JVM languages.
It includes a low-level bytes library, serialization and deserialization codecs (e.g. RLP), various cryptography functions and primatives, and lots of other helpful utilities.
Tuweni is developed for JDK 11 or higher.
Build Instructions
Install Docker.
Clone along with submodules
git clone https://github.com/apache/incubator-tuweni.git tuweni
cd tuweni
git submodule update --init --recursive
Build the project
One step build
Requires Docker:
./build.sh
With Gradle and Java
Install Gradle >6 and JDK 11.
Run:
$>gradle setup
It will install the Gradle wrapper with the correct version.
Then build:
$>./gradlew build
After a successful build, libraries will be available in build/libs
.
Contributing
Your contributions are very welcome! Here are a few links to help you:
Mailing lists
More information
License
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE
file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file
to You 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.
Crypto Notice
This distribution includes cryptographic software. The country in which you
currently reside may have restrictions on the import, possession, use, and/or
re-export to another country, of encryption software. BEFORE using any
encryption software, please check your country's laws, regulations and
policies concerning the import, possession, or use, and re-export of encryption
software, to see if this is permitted. See [http://www.wassenaar.org] for
more information.
The Apache Software Foundation has classified this software as Export Commodity
Control Number (ECCN) 5D002, which includes information security software using
or performing cryptographic functions with asymmetric algorithms. The form and
manner of this Apache Software Foundation distribution makes it eligible for
export under the "publicly available" Section 742.15(b) exemption (see the BIS
Export Administration Regulations, Section 742.15(b)) for both object code and
source code.
The following provides more details on the included cryptographic software: