前言

LabVIEW程序开发,让我们的程序设计变的简单容易,但是设计过程中也不乏大量的重复性工作,其中最让人头痛的莫过于依赖冲突问题。

事实上,只要你对文件进行了修改或者移动,必不可少的依赖冲突就会产生。

如何避免依赖,或者说设计一个容易移植的程序呢? 本文给大家一个思路,有更好的意见可以共同探讨。

正文

LabVIWE路径依赖的解除有很多方法,今天介绍的相对简单便捷的一种,后续我也会整理整理其他的一些解除方法。

什么是路径依赖冲突
文本语言中每一个函数是只是一个Function,而LabVIWE的函数却是一个文件,所以LabVIEW开发出来的程序会存在许多的.vi文件,这些文件在磁盘上按照一定的规律存储。

如果你脱离LabVIEW改变了这些存储规则,各种路径依赖的冲突就会产生,最典型的表现形式如下图所示:

为什么会出现路径冲突

路径冲突的出现有很多原因,常见的情境有以下方面:
1. 写了一些代码发现名字命名不好,在磁盘下修改了这些命名
2. 需要用到其他项目中的一些文件,所以拷贝了一份过来
3. 需要移植到另外一台电脑上,或者给别的人去阅读代码
 

怎么解决路径冲突

路径冲突形成的原因各不相同,这里小黑只介绍一下如何避免拷贝代码带来的路径冲突。

事情的起因是这样的:

有一天,小黑突然想起当前的项目需要使用用户登陆界面,而登陆功能都做过N个版本了,不想再重新写一遍。于是小黑想把以前项目中的代码复用到新项目。

简单复制后出现了许多许多的路径冲突和依赖问题。

为了避免上述的问题,小黑通过下面的方法去做,问题迎刃而解。

干货如下:

1.将需要解除依赖关系的VI放置于一个空白的项目中去,这里可以是一个VI,也可以是一个文件夹或者是一个项目

2.创建源代码发布的Builds,建立一个发布的工程
3.将需要发布的内容添加到Always Include中去

4.设置目标目录,用于设定发布的路径

5.设置支持目录,该目录主要用于放置依赖的一些文件VI

6.源代码设置,其中核心代码的正常配置到目标目录下即可,这里重点看的是依赖目录放置位置,选择Dependencies,然后选择为支持目录。其他的一些附属操作可以自己摸索。

5.解除对VI的依赖关系
完成上述的设定后,可以预览一下发布代码后的内容,这里我将依赖的VI都放在了data目录下

点击发布按钮,即可在目标文件夹下找到依赖解除的VI了。

解除依赖后的VI直接复制移动到项目下,新的项目就会使用一个没有任何冲突的VI群了。

简单的配置,带了了效率的极大提升!这个技能必不可少!

后记

我分享这些内容,一方面是为了整理和输出知识的过程,另一方面也给还没有注意到这个细节的工程师带来一些思考。

如果你觉得这些文章对自己有帮助,或者你也有一些属于自己的心得体会,不妨后台联系我,共同探讨进步,闭门造车永远是慢速前进的,分享才会促进共同进步。




 
 

【LabVIEW技巧】路径依赖解除方法的更多相关文章

  1. Scala 深入浅出实战经典 第52讲:Scala中路径依赖代码实战详解

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-64讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  2. asp.net后台获取路径的各种方法归纳

    asp.net后台获取路径的各种方法归纳   1.Request.CurrentExecutionFilePath    获取当前请求的虚拟路径,不同于 FilePath,差别在于如果请求已在服务器代 ...

  3. (转)多个mapreduce工作相互依赖处理方法完整实例(JobControl)

    多个mapreduce工作相互依赖处理方法完整实例(JobControl) 原文地址:http://mntms.iteye.com/blog/2096456?utm_source=tuicool&am ...

  4. scrapy技术进阶-URL路径依赖

    方法1: #!/usr/bin/python # -*- coding: gbk -*- import time from scrapy.spider import BaseSpider from s ...

  5. 第52讲:Scala中路径依赖代码实战详解

    今天学习了scala中的路径依赖,来看一下实战代码 class Outer{  private val x = 10  class Inner{    private val y = x +10  } ...

  6. java中得到classpath和当前类的绝对路径的一些方法(路径中的%20"进行替换空格)

    原网址:http://blog.csdn.net/shendl/article/details/1427475 (注意:利用下面方式得到路径,如果路径中有空格字符, 那么会有"%20&quo ...

  7. 解决JSP路径问题的方法(jsp文件开头path, basePath作用)

    原文:http://blog.csdn.net/mingxunzh/article/details/4627185 在JSP中的如果使用 "相对路径"  则有可能会出现问题. 因为 ...

  8. WPF 获取程序路径的一些方法,根据程序路径获取程序集信息

    一.WPF 获取程序路径的一些方法方式一 应用程序域 //获取基目录即当前工作目录 string str_1 = System.AppDomain.CurrentDomain.BaseDirector ...

  9. eWebeditor编辑器上传图片路径错误解决方法[疑难杂症]【转,作者:unvs】

    做了一个多版本的网站,后台用的编辑器是eWebeditor,NET版,后面发现上传图片或者文件之后,路径错误无法显示,必须手工修改才行.. 为了更清楚的说明问题,我下面会说的比较详细,首先是网站文件框 ...

随机推荐

  1. Python: 利用Python进行数据分析 学习记录

    -----15:18 2016/10/14----- 1. import numpy as np;import pandas as pd values = pd.Series(np.random.no ...

  2. java 持久框架mybatis的初步学习

    什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索.MyBati ...

  3. String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";作用!!!!!

    <%String path = request.getContextPath();String basePath = request.getScheme()+"://"+re ...

  4. Android安全攻防战,反编译与混淆技术完全解析(下)

    在上一篇文章当中,我们学习了Android程序反编译方面的知识,包括反编译代码.反编译资源.以及重新打包等内容.通过这些内容我们也能看出来,其实我们的程序并没有那么的安全.可能资源被反编译影响还不是很 ...

  5. iOS动画效果和实现

    动画效果提供了状态或页面转换时流畅的用户体验,在iOS系统中,咱们不需要自己编写绘制动画的代码,Core Animation提供了丰富的api来实现你需要的动画效果. UIKit只用UIView来展示 ...

  6. Div 定时移动

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  7. JAVA图片验证码

    package hh.com.util; import java.io.IOException; import javax.servlet.ServletException; import javax ...

  8. Mac php使用gd库出错 Call to undefined function imagettftext()

    第一次在Mac下使用ThinkPHP,用到验证码功能时报如题的错误: Call to undefined function Think\imagettftext() 然后检查自己的GD库,发现安装上了 ...

  9. tp框架之AJAX

    实现一个AJAX添加并显示数据的例子 控制器 <?php namespace Home\Controller; use Think\Controller; class AjaxControlle ...

  10. Vue.js介绍样码

    了解一下,其它的什么SASS,COMPASS,WEBPACK,VUE.JS都看看,了解一下前端开发的一些知识点吧. <!DOCTYPE html PUBLIC "-//W3C//DTD ...