Skip to content
JavaSee: Query Method Calls from Java Programs. It's Java version of querly https://github.com/soutaro/querly
Java Other
  1. Java 98.8%
  2. Other 1.2%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc
example
gradle/wrapper
grammar
logo
scripts
src
.dockerignore
.gitignore
.gitmodules
.travis.yml
CHANGELOG.md
CREDITS
Dockerfile
LICENSE
README.md
build.gradle
gradlew
gradlew.bat
lombok.config

README.md

JavaSee logo Build Status

JavaSee

JavaSee is a fully customizable linter for Java code, where you can define your own rules specific to your project or your company.

rules:
  - id: your-company.java.arraylist
    pattern: new ArrayList(...)
    message: In this company, you shouldn't use ArrayList

I don't know why the company prohibits using ArrayList, but assume a company has such a rule. Probably no linter in the world provides this rule, but you can implement it using JavaSee in three lines of code as you can see in the example above.

Some rules you want are too subtle or too project/team dependent so general lint tools don’t have them. JavaSee offers a new way to access linter rules: you can define your rules with a pattern language, which makes defining new rules 10x easier!

Installation

It requires Java 11 or later.

You can download the binary distribution from the releases page. Unzip the archive, and execute the javasee or javasee.bat included in the bin directory.

$ javasee-some-version/bin/javasee

You can build from the source code.

$ git clone htts://github.com/sider/JavaSee.git
$ cd JavaSee
$ ./gradlew shadowjar
$ java -jar build/libs/JavaSee-all.jar

Docker images

We provide Docker images to help you trying JavaSee without installing Java 11.

$ docker pull sider/javasee
$ docker run -t --rm -v `pwd`:/work sider/javasee

The default latest tag points to the latest released version. You can pick a tag from version names from tags list.

Quick start

$ javasee init          # Generate a config file in your repository.
$ vim javasee.yml       # Edit the config file to define your rules.
$ javasee check         # Run the linter.

Documentation

You can’t perform that action at this time.