UE4填坑日记之-生成.sln文件的问题「建议收藏」

UE4填坑日记之-生成.sln文件的问题「建议收藏」UE4填坑日记之-生成.sln文件的问题

大家好,又见面了,我是你们的朋友全栈君。

此文章来自于【三巫社区微博】

故事大概是这样的。

有一天心血来潮把系统重装了。
  然后装开发环境,本来想装VS2015的。结果手贱装成了2013,于是想想,装了就装了吧。接着再把VS2015装上。
  然后开心地打开UE4,写了会儿代码。感觉新系统用起来还挺爽。但没过多久就发现了一个问题。就是,我在手动添加一个新类后,右键.uproject文件,”Generate Visual Studio Project File”.

 图1

UE4填坑日记之-生成.sln文件的问题「建议收藏」

结果莫名奇妙出来个 .v12.suo文件,丫的这不是vs2013的东西吗? 按理说,我现在用的UE4是 4.11的版本,不应该出这玩意啊!~
  图2
  UE4填坑日记之-生成.sln文件的问题「建议收藏」
  然后,带着忐忑的心情打开.sln,果然。
  图3
  UE4填坑日记之-生成.sln文件的问题「建议收藏」
  但这时候其实是可以正常编译的。直到你把项目的 Intermediate目录删掉再重新生成.sln。     这时候就会发现,VS都无法正常编译项目的。感觉已经没救了。

  那么问题来了。4.11的版本是要VS2015编译。 但我们又不能生成2015的.sln。 难道是因为我装了2013,系统里有两个版本的VS,导致出现这个问题?感觉好奇怪啊。
  算了,再把系统重装一遍(我就是个这么彻底的人)。
  这次装系统,把C盘格了,顺便把D盘,E盘…. 都格了,来个干净!
  然后,装完VS2015,装完UE4,新建C++项目。 嗯。sln是2015的。看起来没问题。
  但,右键Generate Visual Studio文件后。又来了!又成了2013的sln! Fu c k !
   妈的,老子电脑里根本就没有VS2013,你丫给我生成个屁的2013 sln! 摔…..
   …..
  …..
  但愤怒是解决不了问题的。于是开始找原因。首先想到的是Version Selector,就是这玩意注册的右键菜单 。于是跟到源码里看。发现它调用了DesktopPlatform模块里的代码。
  图4
  UE4填坑日记之-生成.sln文件的问题「建议收藏」
  大概是这样的。
  这段代码里有个关键点,就是 Arguments (-projectfiles )之类的。
这一看就是命令行。于是在想,如果要生成 2015的 sln,需要什么样的命令行呢? 在这个函数里打断点试试?
  这时候,万能的QQ群闪了。然后看了一下。

  图5
  UE4填坑日记之-生成.sln文件的问题「建议收藏」
  Showlog呢,就是这东西。
  图6
  UE4填坑日记之-生成.sln文件的问题「建议收藏」
  这里,第一行命令就是生成.sln的命令行。。 于是复制出来。在最后面加一个 -2015.  于是最后命令行是这样的。
  “C:/UE4/UnrealEngine-4.11/Engine/Binaries/DotNET/UnrealBuildTool.exe”  -projectfiles -project=”C:/Users/xtyga/Documents/Unreal Projects/JBoomSky/JBoomSky.uproject” -game -engine -progress -2015

  运行一下。正确生成了 VS2015的.sln文件!!!

  但是,这样就够了吗?NO,NO,NO…
  作为一个有节操的程序员,肯定不会每次都手动敲一遍命令(何况还这么长)。
  于是,把这段命令行,写成一个bat,以后每次要生成.sln,双击一下.bat就OK了。
  至此,完美解决。  甚至觉得用bat的方式,比右键点击生成更简单更快呢。
  但是至今也未找到为什么会生成2013的sln文件的原因。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140530.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mac全选文字的快捷键_MACBOOK最全快捷键指南

    mac全选文字的快捷键_MACBOOK最全快捷键指南官方最新出炉的快捷键大全:剪切、拷贝、粘贴和其他常用快捷键Command-X:剪切所选项并拷贝到剪贴板。Command-C:将所选项拷贝到剪贴板。Command-V:将剪贴板的內容粘贴到当前文稿或应用中。Command-Z:撤销前一个命令。随后您可以按Command-Shift-z来重做,从而反向执行撤销命令。Command-A:全选各项。Command-F:查找文稿中的项目或打开“查找”窗口。…

    2022年5月26日
    348
  • 网上书城项目总结(servlet_jsp+javaBean)

    网上书城项目总结(servlet_jsp+javaBean)          网上书城项目总结1项目大纲设计:需求分析系统设计详细设计权限设计2技术选型:Servlet+jsp+javaBeanListener+Filter+jstl+fileupload+c3p0+dbutils+mysql3开发顺序:  从dao层到service层再到web层网上书城需求分析:分别对管理员,普通用户,系统三个用户…

    2022年7月27日
    15
  • Linux Ubuntu 下安装与卸载 JDK,亲测有效~[通俗易懂]

    Linux Ubuntu 下安装与卸载 JDK,亲测有效~[通俗易懂]习惯了在Windows系统上搭建JDK环境,也来试试在Linux上搭建JDK环境,经过最近两天的研究,将自己的心得分享给大家。由于本人水平有限,错误在所难免,还请各路豪杰不吝赐教~  使用apt-get在线安装与卸载,解压.tar.gz包手动安装与卸载

    2022年6月25日
    27
  • android之VOLD:staging目录作用与ASEC文件 -总结[通俗易懂]

    android之VOLD:staging目录作用与ASEC文件 -总结[通俗易懂]/mnt/secure/staging来看一下mountVol代码 int Volume::mountVol() {    int rc = 0;    char errmsg[255];    const char *mountPath;         char devicePath[255];                sprintf(device

    2022年7月20日
    16
  • java list去重_JAVA基础-List去重的6种方式[通俗易懂]

    java list去重_JAVA基础-List去重的6种方式[通俗易懂]简述java开发中经常会遇到List去重这个工作,现在就来整理一下List去重的6种方式。方法代码以及效率测试模拟测试数据相关代码:importjava.util.LinkedList;importjava.util.List;/***@ClassName:ListCleatMain*@Description:模拟数据进行List去重测试*@author:ssqxx*@date:…

    2022年5月25日
    35
  • vs2010打不开vs2017的.sln文件[通俗易懂]

    vs2010打不开vs2017的.sln文件[通俗易懂]出现错误提示“选择的文件是解决方案文件但是用此应用程序的较新版本创建的,无法打开”解决方案:1、复制下面这段语句MicrosoftVisualStudioSolutionFile,FormatVersion11.00#VisualStudio20102、用记事本方式打开vs2017版本的.sln文件,将上面复制的两行语句替换.sln文件里面前两行语句,保…

    2022年5月23日
    248

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号