如何避免重新编译与其他几个插件的依赖关系相同的Eclipse插件

时间:2017-07-07 19:04:48

标签: ant eclipse-rcp

我有几个Eclipse项目,每个项目都是一个RCP插件。所有这些都依赖于另一个常见的项目,它本身就是一个RCP插件。

我一直在Ant中构建每个项目:

[HttpPost("DeleteOrganisations")]
public async Task<IActionResult> DeleteOrganisations([FromBody] DeleteOrganisationsModel model)
{
    //Test case 2 fails here
    if (model == null || !ModelState.IsValid)
    {
        return Ok(new GenericResultModel(_localizer["An_unexpected_error_has_occurred_Please_try_again"]));
    }

    List<OrganisationModel> organisations = (await _organisationService.GetOrganisations(model.OrganisationIds)).ToList();

    //Test case 3 fails here
    if (organisations == null || organisations.Count == 0)
    {
        return Ok(new GenericResultModel(_localizer["Could_not_find_organisations"]));
    }

    StatusModel status = await _statusService.GetStatus(StatusTypeEnum.StatusType.Organisation, StatusEnum.Status.Removed);

    if (status == null)
    {
        return Ok(new GenericResultModel(_localizer["Could_not_find_status"]));
    }

    foreach (OrganisationModel organisation in organisations)
    {
        organisation.StatusId = status.Id;
    }

    List<OrganisationModel> updatedOrganisations = (await _organisationService.UpdateOrganisations(organisations)).ToList();

    if (updatedOrganisations == null || updatedOrganisations.Count == 0)
    {
        return Ok(new GenericResultModel(_localizer["Could_not_remove_organisations"]));
    }

    if (updatedOrganisations.Count == 1)
    {
        return Ok(new GenericResultModel { Id = updatedOrganisations[0].Id });
    }

    return Ok(new GenericResultModel { Count = updatedOrganisations.Count });
}

然而,通过这种方式,为每个依赖项目重建了公共项目,这非常缓慢且不必要。有没有办法只构建/编译一次公共项目并使用输出?

1 个答案:

答案 0 :(得分:0)

我能够通过将已经构建的插件复制到Eclipse Target的dropins文件夹中来实现这一点。 PDE在构建其他产品时检测到这些插件,并且不会重建它们。