Skip to content

green-code-initiative/ecoCode-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EcoCode-java

ecoCode is a collective project aiming to reduce environmental footprint of software at the code level. The goal of the project is to provide a list of static code analyzers to highlight code structures that may have a negative ecological impact: energy and resources over-consumption, "fatware", shortening terminals' lifespan, etc.

ecoCode is based on evolving catalogs of good practices, for various technologies. This SonarQube plugin then implements these catalogs as rules for scanning your Java projects.

⚠️ This is still a very early stage project. Any feedback or contribution will be highly appreciated. Please refer to the contribution section.

License: GPL v3 Contributor Covenant

🌿 SonarQube Plugins

This plugin is part of the ecoCode project.
You can find a list of all our other plugins in the ecoCode repository

🚀 Getting Started

You can give a try with a one command:

./mvnw verify -Pkeep-running

... then you can use Java test project repository to test the environment : see Java test project in ./src/it/test-projects/ecocode-java-plugin-test-project

NB: To install other ecocode plugins, you can :

  • add JAVA System properties Dtest-it.additional-plugins with a comma separated list of plugin IDs (groupId:artifactId:version), or plugins JAR (file://....) to install.

    For example :

    ./mvnw verify -Pkeep-running -Dtest-it.additional-plugins=org.sonarsource.javascript:sonar-plugin:10.1.0.21143
  • install different ecocode plugins with Marketplace (inside admin panel of SonarQube)

You can also directly use a all-in-one docker-compose

... and configure local SonarQube (security config and quality profile : see configuration for more details).

🛒 Distribution

Ready to use binaries are available from GitHub.

🧩 Compatibility

Plugin version SonarQube version Java version
1.6.+ 9.4.+ LTS to 10.6.0 11 / 17
1.7.+ 9.9.+ LTS to 10.6.0 17

Compatibility table of versions lower than 1.4.+ are available from the main ecoCode repository.

🤝 Contribution

check ecoCode repository

🤓 Main contributors

check ecoCode repository

Links