zoukankan      html  css  js  c++  java
  • 为什么会找不到D层文件?

              

          近期两天在重装系统,今天好不easy把各种东西都装齐全了,再打开我的机房收费系统,就提演示样例如以下错误:

       


    看到这个问题。我感觉非常熟。由于曾经也遇到过两次这个问题,都是改了下D层的编译路径。改到了U层的binDebug目录下。所以这次也照样复制粘贴,可是执行还是报这个错。

    这让我不得不从头想想问题究竟出在哪里了。


    1,为什么要为D层手动改动编译时的输出路径?


      这个问题还得从咱们的包图和引用关系说起:




          从图中能够看出,U层引用外观层和实体层;外观层引用实体层和B层,B层引用D层和工厂层,接口层引用实体层。

    工厂层引用接口层。D层引用实体层。。

    。有没有发现什么?谁引用了D层?No One! 正由于如此,当程序从U层启动的时候。由于不能通过层层引用实例化D层,导致了出现找不到D层。

    那么。有的童鞋可能会说,让U层引用D层不即可了么? 但是这个不就成了传统的两层了么,中间的解耦工作相当于白干了。逻辑上说只是去,但是经过试验,发现实现上还是可行的。


        更好的方法还是採用更改编译路径。那么。为什么错误出现时我更改编译路径不行呢?

       

        2,原来程序的编译结果有两个版本号


             bin文件夹用来存放程序的编译结果,它有Debug和Release两个版本号,分别相应的文件夹为bin/Debug和bin/Release,这个文件夹是默认的输出路径。在编译后生成的程序文件会存放在该文件夹下。


          知道了这一点后,我查看了自己U层的输出路径,发现它不知道什么时候。已经默默变成了bin/Release可能这个程序是装系统备份后的吧。导致了跟曾经自己觉得的输出路径不一样。


         通过这件小事,发现,知道为什么比知道怎么做还重要啊~

       

      

  • 相关阅读:
    忘记 mysql 数据库连接密码(解决方案)
    CVE-2020-14882&CVE-2020-14883 Weblogic未授权远程命令执行漏洞
    社会工程学之信息收集之信息收集
    8种src常用越权测试小技巧
    《数据中台-让数据用起来》思维导图(更新中)
    idea使用zsh代替系统的terminal
    mac安装oh my zsh
    mac安装homebrew
    navicat破解(亲测可用)
    docker搭建typecho博客系统,并启用https
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6879564.html
Copyright © 2011-2022 走看看