fixed configuration cache issue in Sambal plugin
All checks were successful
CI / build (push) Successful in 1m53s

This commit is contained in:
2024-12-28 15:04:59 +08:00
parent d1af8ef942
commit b6fa9f2948
2 changed files with 7 additions and 6 deletions

View File

@@ -1,5 +1,5 @@
lys.catalog.version=2024.12.07 lys.catalog.version=2024.12.28
version.myGradlePlugins=2024.12.08 version.myGradlePlugins=2024.12.28
version.gradle=8.11.1 version.gradle=8.11.1
gitea.maven.url = https://gitea.woggioni.net/api/packages/woggioni/maven gitea.maven.url = https://gitea.woggioni.net/api/packages/woggioni/maven

View File

@@ -18,6 +18,7 @@ import org.gradle.api.plugins.AppliedPlugin;
import org.gradle.api.plugins.ExtraPropertiesExtension; import org.gradle.api.plugins.ExtraPropertiesExtension;
import org.gradle.api.plugins.JavaPlugin; import org.gradle.api.plugins.JavaPlugin;
import org.gradle.api.plugins.PluginManager; import org.gradle.api.plugins.PluginManager;
import org.gradle.api.provider.Provider;
import org.gradle.api.tasks.TaskContainer; import org.gradle.api.tasks.TaskContainer;
import org.gradle.api.tasks.bundling.Jar; import org.gradle.api.tasks.bundling.Jar;
@@ -208,11 +209,11 @@ public class SambalPlugin implements Plugin<Project> {
public void apply(Project project) { public void apply(Project project) {
ExtraPropertiesExtension ext = project.getRootProject().getExtensions().getExtraProperties(); ExtraPropertiesExtension ext = project.getRootProject().getExtensions().getExtraProperties();
ext.set("getIntegerVersion", new MethodClosure(this, "getVersionInt").curry(project)); ext.set("getIntegerVersion", new MethodClosure(this, "getVersionInt").curry(project));
ext.set("currentTag", getCurrentTag(project)); ext.set("currentTag", project.provider(() -> getCurrentTag(project)));
ext.set("resolveProperty", new MethodClosure(this, "resolveProperty").curry(project)); ext.set("resolveProperty", new MethodClosure(this, "resolveProperty").curry(project));
ext.set("copyConfigurationAttributes", new MethodClosure(this, "copyConfigurationAttributes")); ext.set("copyConfigurationAttributes", new MethodClosure(this, "copyConfigurationAttributes"));
final String gitRevision = getGitRevision(project); final Provider<String> gitRevisionProvider = project.provider(() -> getGitRevision(project));
ext.set("gitRevision", gitRevision); ext.set("gitRevision", gitRevisionProvider);
PluginManager pluginManager = project.getPluginManager(); PluginManager pluginManager = project.getPluginManager();
pluginManager.withPlugin("java-library", (AppliedPlugin plugin) -> { pluginManager.withPlugin("java-library", (AppliedPlugin plugin) -> {
@@ -223,7 +224,7 @@ public class SambalPlugin implements Plugin<Project> {
Attributes attrs = mf.getAttributes(); Attributes attrs = mf.getAttributes();
attrs.put(java.util.jar.Attributes.Name.SPECIFICATION_TITLE.toString(), project.getName()); attrs.put(java.util.jar.Attributes.Name.SPECIFICATION_TITLE.toString(), project.getName());
attrs.put(java.util.jar.Attributes.Name.SPECIFICATION_VERSION.toString(), project.getVersion()); attrs.put(java.util.jar.Attributes.Name.SPECIFICATION_VERSION.toString(), project.getVersion());
attrs.put(java.util.jar.Attributes.Name.IMPLEMENTATION_VERSION.toString(), gitRevision); attrs.put(java.util.jar.Attributes.Name.IMPLEMENTATION_VERSION.toString(), gitRevisionProvider);
}); });
}); });
}); });