gpt4 book ai didi

java - EMF Compare 代码的编译问题

转载 作者:行者123 更新时间:2023-11-30 04:26:05 24 4
gpt4 key购买 nike

EMF比较版本:2.1.0 M6 (2013/03/19 17:50)

我正在尝试使用独立比较,如 this guide 中所述。 。我收到以下编译错误

The method setMatchEngine(IMatchEngine) is undefined for the type EMFCompare.Builder

下面的代码

// Configure EMF Compare
IEObjectMatcher matcher = DefaultMatchEngine.createDefaultEObjectMatcher(UseIdentifiers.NEVER);
IComparisonFactory comparisonFactory = new DefaultComparisonFactory(new DefaultEqualityHelperFactory());
IMatchEngine matchEngine = new DefaultMatchEngine(matcher, comparisonFactory);
EMFCompare comparator = EMFCompare.builder().setMatchEngine(matchEngine).build();

我看到 setMatchEngine 被其他一些 API 取代,如下图所示。我不确定如何使用该 API 指定新的 matchEngine

enter image description here

最佳答案

这些 API 已针对 M6 进行了更改(就删除而言,API 现在处于最后的 2.1.0 阶段)。如果您的工作区中有代码,那么 EMF Compare 的单元测试是“如何使用 API”的一个很好的来源。

对于您的特定用例,代码将如下所示:

IMatchEngine.Factory factory = new MatchEngineFactoryImpl(UseIdentifiers.NEVER);
IMatchEngine.Factory.Registry matchEngineRegistry = new MatchEngineFactoryRegistryImpl();
matchEngineRegistry .add(factory);
EMFCompare comparator = EMFCompare.builder().setMatchEngineFactoryRegistry(matchEngineRegistry).build();

请注意,在大多数情况下使用默认注册表 (EMFCompare.builder().build();) 就足够了...除非您确实无法让 EMF Compare 使用 ID :p。

[编辑:一个小注释:我们现在已经用准确的信息更新了 wiki,感谢您的反馈;)]

关于java - EMF Compare 代码的编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15843364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com