Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2012 Dotfuscator导致TFS生成挂起_Visual Studio 2012_Tfs_Tfsbuild_Dotfuscator - Fatal编程技术网

Visual studio 2012 Dotfuscator导致TFS生成挂起

Visual studio 2012 Dotfuscator导致TFS生成挂起,visual-studio-2012,tfs,tfsbuild,dotfuscator,Visual Studio 2012,Tfs,Tfsbuild,Dotfuscator,当构建被设置为在文件上运行Dotfuscator时,我很难完成构建。我的环境是VisualStudio专业2012与Team Foundation Server 2012配对,因此我使用Buffic定义和微软Team Foundation Bu建d体系结构(构建控制器、构建代理等)。p> 我的问题是,当我在Release config中启动一个构建定义时,该定义被设置为在我的输出文件上运行Dotfuscator Professional,构建挂起(要么挂起,要么运行太久,我还没有看到一个完整的)

当构建被设置为在文件上运行Dotfuscator时,我很难完成构建。我的环境是VisualStudio专业2012与Team Foundation Server 2012配对,因此我使用Buffic定义和微软Team Foundation Bu建d体系结构(构建控制器、构建代理等)。p> 我的问题是,当我在Release config中启动一个构建定义时,该定义被设置为在我的输出文件上运行Dotfuscator Professional,构建挂起(要么挂起,要么运行太久,我还没有看到一个完整的)。日志文件显示,它在构建过程模板活动“关联变更集和工作项”期间挂起,我的构建服务器上的任务管理器确认,此时Dotfuscator运行时需要大量的CPU和内存(大约50%的CPU,我已经看到所需的内存接近一兆)。这是构建日志的后一部分

        Find Property Values
            CurrentLabel =
            LastLabel = 
            Result = (Collection)
            UpdateWorkItems = True
    Final Property Values
        Condition = True
Final Property Values
    Condition = True
最后几行是故意复制的,这正是日志读取的内容。这就是构建挂起的地方,Dotfuscator仍在构建服务器上运行

有趣的是,当我在构建服务器上进行本地构建(右键单击解决方案,单击重建)时,构建运行得很好,只需一分钟的Dotfuscator就可以完成。这就告诉我,dotFuxcActer和Team Foundation Bug之间正在发生一些事情。可能与生成过程模板和/或生成代理有关?我不太擅长团队基础建设,而不是我在这一点上所做的工作。


关于如何让Dotfuscator更快或正确运行(取决于错误原因),我有什么想法吗?非常感谢您的帮助。

您如何运行Dotfuscator?从命令行或通过生成后批处理文件通过
Dotfuscate
MSBuild task?命令行。命令看起来是这样的。。。“dotfuscator[path to project].Obfuscate.Release.xml”我将dotfuscator可执行文件的路径作为环境变量包含在生成服务器上,以确保其正确运行。您使用的是最新版本吗?而且这有点傻,但您以前在该用户帐户下运行过Dotfuscator吗?您可能必须在该用户帐户下通过GUI运行Dotfuscator一次,才能接受许可协议。。。虽然它应该给出一个错误,但这不仅仅是挂起(除非您使用的是旧版本),这是一个有趣的想法!我试试看,看看能发现什么。这可能不是因为授权,因为通过延长耐心,我已经得到了一个构建,要用模糊处理完成(100分钟运行时间!!!)。然而,可能有一个障碍导致了这种减速。我还注意到Dotfuscator在构建服务器上需要高达一兆内存,这完全是不寻常的吗?希望这些新信息能让您了解更多。是的,请确保构建服务器有足够的内存。对于大型项目,可能会消耗大量内存。例如,当用Dotfuscator本身混淆Dotfuscator时(狗食),我们确保机器有4G。它可能在内存较少的情况下工作,但如果它开始分页,它会很快陷入混乱。特别是由于
ilasm
ildasm
消耗了大量内存以及Dotfuscator本身。