“中止:没有提供EMF资源的途径!”

时间:2018-06-06 12:01:51

标签: java emf

我想从jar文件中运行一个名为Hoare Advanced Homework Assistant的程序验证工具。 首先,我从网站(“http://haha.mimuw.edu.pl/”)下载了源文件,然后将它们导入Eclipse。 然后我按照BUILD.txt安排并创建了一个可执行的Jar文件。 但是我在命令提示符下执行jar文件,出现以下消息 “中止:没有提供EMF资源的途径!” 我认为需要一个论点,但我不知道应该给出什么样的论点。 这是一个主类课程:

public class Main{
    public static void main(String[] args) {
        if (args.length==0) {
            System.err.println("Aborting: no path to EMF resource provided!");
            return;
        }

        Injector injector = new net.afyre.haha.demo.HahaStandaloneSetupGenerated().createInjectorAndDoEMFRegistration();
        Main main = injector.getInstance(Main.class);
        main.runGenerator(args[0]);
    }

    @Inject 
    private Provider<ResourceSet> resourceSetProvider;

    @Inject
    private IResourceValidator validator;

    @Inject(optional=true)
    private IGenerator generator;

    @Inject 
    private JavaIoFileSystemAccess fileAccess;

    protected void runGenerator(String string) {
        // load the resource
        ResourceSet set = resourceSetProvider.get();
        Resource resource = set.getResource(URI.createURI(string), true);

        // validate the resource
        List<Issue> list = validator.validate(resource, CheckMode.ALL, CancelIndicator.NullImpl);

        if (!list.isEmpty()) {
            for (Issue issue : list) {
                System.err.println(issue);
            }
            return;
        }

        // configure and start the generator

        fileAccess.setOutputPath("src-gen/");
        if (generator != null) {
            generator.doGenerate(resource, fileAccess);
        } else {
            System.out.println("Code generator not foubnd!");
        }
        System.out.println("Code generation finished.");
    }
}

您能否为我提供解决方案?感谢。

1 个答案:

答案 0 :(得分:0)

期望的字符串可能是&#34; platform:/resource/my.project/my.folder/my.file"或切换&#34;资源&#34;使用&#34;插件&#34;。基本上任何符合URI.createURI的代码都表示。