https://github.com/activeviam/java-api-migration-tool
A tool for generating API diffs between two versions of a java library, and applying this mapping to a project.
https://github.com/activeviam/java-api-migration-tool
Last synced: 4 months ago
JSON representation
A tool for generating API diffs between two versions of a java library, and applying this mapping to a project.
- Host: GitHub
- URL: https://github.com/activeviam/java-api-migration-tool
- Owner: activeviam
- Created: 2023-12-06T10:00:45.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-09T12:32:56.000Z (over 1 year ago)
- Last Synced: 2025-07-28T16:37:01.462Z (10 months ago)
- Language: Java
- Homepage:
- Size: 362 KB
- Stars: 1
- Watchers: 7
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# How to use Java API Migration Tool to migrate Atoti
This project allows to automatically migrate class imports of your java project when you bump your atoti-server version.
It is composed of two parts:
- mapping application
- migration tool
Do not forget to run `mvn clean install` before running the tools.
## Basic usage
### Migrate your application from 6.0 to 6.1.0
Run `./migrate.sh "/path/to/the/project/to/migrate"`.
### Migrate your application from 5.11 to 6.1.0
Run `./migrate.sh "/path/to/the/project/to/migrate" "5.11"`.
### Migrate your application from 5.10 to 6.1.0
Run `./migrate.sh "/path/to/the/project/to/migrate" "5.10"`.
## Mapping
It is possible to generate mapping files with this tool (see `README_UNCENSORED.md`), but most relevant mapping files have already been generated.
You can find them all in `src/main/resources`.
## Migration
The tool to migrate class imports with the generated mapping file.
You can use this tool by running `./migrate.sh ` in bash.
About the arguments:
- if 1 argument is provided, you can set the path to the project to migrate
- if 2 arguments are provided, you can set the path to the project and its current atoti-server version
- if 3 arguments are provided, you can set the path to the project and the current and target atoti-server versions
Default values for the current and target versions are `6.0.16` and `6.1.0` when they are not provided.
Make sure there is a mapping file generated with these versions before trying to migrate.
Usage example: `./migrate.sh "/path/to/the/project/to/migrate" "6.0.0" "6.1.0"`.