Interface LanguageProvider

All Superinterfaces:
ExtensibleEnumProvider<Language>, SpiService

@Experimental @Consumer @Named public interface LanguageProvider extends ExtensibleEnumProvider<Language>
Service provider interface for registering custom Language implementations.

This interface allows plugins and extensions to define and register additional programming languages beyond the standard ones provided by Maven. Implementations of this interface will be discovered through the Java ServiceLoader mechanism and their provided languages will be available throughout the Maven build process.

Example usage:

 public class CustomLanguageProvider implements LanguageProvider {
     public Collection<Language> provides() {
         return Collections.singleton(language("kotlin"));
     }
 }
 
Since:
4.0.0
See Also: