3

私の ServiceLoader は私の新しいサービスをロードしたくありません。すべてが正しく設定されていると思います。

Core.Main

public class Main {
  public static void main(String[] args) {
      System.out.println("Before");
      Iterator<IService> services = ServiceLoader.load(IService.class).iterator();
      while (services.hasNext()) {
          IService service = services.next();
          System.out.println(service.sayHi());
      }
      System.out.println("After");
  }
}

Core.service.IService

package service;

public interface IService {
    String sayHi();
}

DbDataBuilder.builder.DbDataBuilder

package builder;

import service.IService;
public class DbDataBuilder implements IService {

    public DbDataBuilder() {
    }

    public String sayHi() {
        return "I am Data Builder";
    }
 }

META-INF/services/service.Iservice

builder.DbDataBuilder

プロジェクトの構造

しかし、実行すると、コンソール出力は次のようになります。

Before
After

私は何か間違っていますか?

4

1 に答える 1