12 Aralık 2021 Pazar

hierynomus license plugin - Bence İyi Çalışmıyor

Giriş
İki tane farklı plugin var ve bunlar genellikle birlikte kullanılıyor. Bunlar
1. license 
2. license-report

Bu pluginin çok iyi çalışmamasının sebebi lisans eksik hatasını tutarlı olarak vermemesi. Bir kere verdikten sonra tekrar vermiyor

Plugin için tüm ayarları başka bir dosyaya taşıyabiliriz. Şöyle yaparız
apply from: "${rootDir}/gradle/license.gradle"

1. license plugin
Örnek
build.gradle dosyasında şöyle yaparız
plugins {
  id "com.github.hierynomus.license" version "0.15.0"
}
License task içinde şöyle yaparız
//A license extension is added to the project, which can be used to configure all
//LicenseCheck and LicenseFormat
license {
  header = file("${rootDir}/config/LICENSE.template") //şablon dosya yolu 
  //variable substitution
ext.year = Calendar.getInstance().get(Calendar.YEAR) ext.name = 'Foo Inc.' ignoreFailures = true //Prevent tasks from stopping the build, defaults to false
mapping { java = 'SLASHSTAR_STYLE' //Üretilen başlık Javadoc gibidir } }
Örnek şablon dosya şöyle
Copyright (c) ${name} and/or its affiliates, ${year}

All Rights Reserved.
The software contained on this media is proprietary to and
embodies the confidential technology of the copyright holder.
Possession, use, duplication or dissemination of the software
and media is authorized only pursuant to a valid written license
from the copyright holder.
This copyright notice must appear in all copies of this software.
LicenseCheck Task
Lisansları kontrol eder ve lisans yoksa veya formatı bozuksa uyarı verir. Açıklaması şöyle
This task checks all the configured source files to validate whether the correct header has been applied. 
LicenseFormat Task - Lisans Başlığı Güncellemek
Açıklaması şöyle
This task formats all the configured source files to add a header to them if no header has been applied yet. 
IntelliJ Gradle penceresindeki 
tasks/license/licenseFormat 
çift tıklanır veya şöyle yaparız
gradle licenseFormatMain

2. license-report plugin
build.gradle dosyasında şöyle yaparız
plugins {
id "com.github.hierynomus.license-report" version "0.15.0" }
downloadLicenses Task - Dependency License Reporting
Açıklaması şöyle
generates reports on your runtime dependencies
Projede kullanılan tüm harici kütüphanelerin lisanlarını bir rapor olarak sunar. html ve json olarak çıktı verir. Raporlar şu dizinde. 
build/reports/license/
Şöyle yaparız
//generates reports on your runtime dependencies
downloadLicenses {
    ignoreFatalParseErrors = true
    includeProjectDependencies = true    
    //a pre-defined mapping of a dependency to a license; useful if the 
    //external repositories do not have license information available
licenses = [ (group('com.foo')) : license('Foo License'), (group('com.colak.myapp')) : license('My License') ]
//a List of dependencies that are to be excluded from reporting
excludeDependencies = [ 'org.wildfly.*', 'org.jboss.*', 'com.foo.bar.*', 'javax.*' ] //Gradle dependency configuration to report on (defaults to "runtime"). dependencyConfiguration = 'compile' }
Örnek
Şöyle yaparız
//You will have to specify for which configuration dependencies should be resolved.
//Following are resolvable by default:
//- compileClasspath
// - runtimeClasspath
downloadLicenses {
  includeProjectDependencies = true
  dependencyConfiguration = 'runtimeClasspath'
  // or
  // dependencyConfiguration = 'compileClasspath'
}



Hiç yorum yok:

Yorum Gönder

Gradle Daemon Nedir?

Giriş Açıklaması  şöyle . Gradle Daemon arka planda çalışır. Çünkü Gradle'ı ayağa kaldırmak ve ilklendirmek çok uzun sürüyor.  Gradle ru...