【问题标题】:Autodesk Forge: WorkItem failing due to AppPackage IssuesAutodesk Forge:由于 AppPackage 问题,WorkItem 失败
【发布时间】:2019-07-09 23:53:31
【问题描述】:

我的 AppPackage 无法加载,我无法在文档或错误消息/代码中找到确切的答案。

我通过将捆绑包解压缩到本地计算机上的“C:\Program Files\Autodesk\ApplicationPlugins”来测试它,它按预期运行/加载。

AppPackage表示创建成功,我确定是最新版本。

插件是一个 .NET DLL 文件。

错误报告消息

[02/15/2019 18:44:48] Starting work item ffbcfc1ca50546fc9a6372424b2cdae1
[02/15/2019 18:44:48] Start download phase.
[02/15/2019 18:44:48] Start downloading file <CENSORED>.
[02/15/2019 18:44:48] Start preparing AppPackage <CENSORED>.
[02/15/2019 18:44:48] Download bits and install app to local cache.
[02/15/2019 18:44:48] End downloading file <CENSORED>.
[02/15/2019 18:44:48] End download phase.
[02/15/2019 18:44:48] Error: Failed to prepare app package(s).
[02/15/2019 18:44:48] Error: An unexpected error happened during phase Downloading of job.
[02/15/2019 18:44:48] Job finished with result FailedEnvironmentSetup

PackageContents.XML

<?xml version="1.0" encoding="utf-8" ?>
<ApplicationPackage SchemaVersion="1.0" AutodeskProduct="AutoCAD"
                    AppVersion="0.1.0"
                    ProductType="Application"
                    Name="CENSORED"
                    Description="CENSORED"
                    Author="CENSORED"
                    FriendlyVersion="0.1.0"
                    ProductCode="{CENSORED}"
                    UpgradeCode="{CENSORED}"
                    Helpfile="./help.html"
                    Icon="./my-icon.jpeg">

    <CompanyDetails Name="CENSORED" Phone="CENSORED" Email="CENSORED"/>

    <Components>
        <RuntimeRequirements SeriesMin="R22.0" Platform="AutoCAD*" OS="Win64"/>

        <ComponentEntry AppName="CENSORED" Version="0.1.0" ModuleName="./CENSORED.dll" AppType=".Net"
                        AppDescription="CENSORED" LoadOnAutoCADStartup="True">
        </ComponentEntry>
    </Components>

</ApplicationPackage>

活动定义: 注意我必须在这里手动扩展一些内联函数,因为我把它分成了多个部分。如果我有错字,请放心,代码实际上是在语法上运行的。

let activity = <CreateActivityRequest>{
            Id: id,
            Version: 1,
            IsPublic: false,
            AppPackages: ['PACKAGE_NAME'],
            Instruction: {Script: 'D6 '},
            RequiredEngineVersion: '22.0',
            Parameters: {
                InputParameters: [{Name: 'HostDwg', LocalFileName: '$(HostDwg)'}],
                OutputParameters: [{Name: 'output', LocalFileName: `output.json`}]
            },
            HostApplication: undefined,
            AllowedChildProcesses: []
        };

来自 AppPackages 列表的条目:

{
  References: [],
  Resource: '...',
  RequiredEngineVersion: '22.0',
  IsPublic: false,
  IsObjectEnabler: false,
  Version: 1,
  Timestamp: '2019-02-15T19:32:33.527Z',
  Description: '',
  Id: 'CENSORED'
},

【问题讨论】:

  • 您能列出您正在使用的 .NET 引用吗?它应该只有 AcDbMgdAcCoreMgd(来自 Autodesk)
  • Acdbmgd,accremgd,acmgd。这个插件是为 AutoCAD 构建的,所以我猜你会建议只重构我需要的代码,所以我不需要 acmgd 参考。我正在使用 acmgd 库来获取块属性表的行。我的理解是通过 API 更改块属性表需要手动更新相关值。我意识到这是内部的,但这是我找到的唯一方法。假设必须删除 acmgd 库,有没有更好的方法来处理这个问题?

标签: autodesk-forge autodesk-designautomation


【解决方案1】:

请务必仔细检查您如何压缩上传的 AppPackage。如果您查看 zip 文件,请确保您有一个名为 PACKAGE_NAME.bundle 的文件夹,并且 PackageContents.XML 文件位于该 PACKAGE_NAME.bundle 文件夹中。

【讨论】:

  • 我试图找到有关向应用商店提供什么的文档,但也许我没有深入挖掘。你是对的 - 我的 zip 文件中需要一个 .bundle 文件夹;不仅仅是一个包含内容的 zip 文件。
  • 如果你正在使用v3,你可以查看这个教程:learnforge.autodesk.io/#/tutorials/modifymodels
猜你喜欢
  • 2018-03-20
  • 1970-01-01
  • 1970-01-01
  • 2018-10-11
  • 1970-01-01
  • 1970-01-01
  • 2016-12-08
  • 2019-12-23
  • 2020-07-01
相关资源
最近更新 更多