<dependencies>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-container-default</artifactId>
<version>2.0.7</version>
</dependency>
</dependencies>
public interface Calculator {
int add(int a, int b);
int subtract(int a, int b);
}
@Component(role = Calculator.class)
public class BasicCalculator implements Calculator {
@Override
public int add(int a, int b) {
return a + b;
}
@Override
public int subtract(int a, int b) {
return a - b;
}
}
public class Application {
public static void main(String[] args) throws PlexusContainerException {
PlexusContainer container = new DefaultPlexusContainer();
Calculator calculator = container.lookup(Calculator.class);
int result = calculator.add(5, 3);
}
}