解决VS命令提示符 “Setting environment for using Microsoft Visual Studio. 此时不应有“系列错误

本文解决在VisualStudio命令提示符中遇到的SettingenvironmentforusingMicrosoftVisualStudio.此时不应有Mirosoft错误。通过修改PATH环境变量中的错误路径及双引号问题,确保开发环境正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



一、起因




最近在玩Boost库。当然首先是要进行Boost库的安装和配置。于是浅墨Google了一下boost库的安装配置攻略,下载了最新版1.55的boost库,就愉悦地开始进行配置了。

当进行到第五步,要在VS命令提示符中运行bootstrap.bat的时候,问题就来了,按着攻略打开Visual Studio2010命令提示符,就迎面报错:

“Setting environment for using MicrosoftVisual Studio. 此时不应有\Mirosoft”

 

于是就有了下文解决问题的过程和这篇博文的诞生。







 二、相关背景



1.关于环境变量的设置。具体在【我的电脑】->【属性】->【高级系统设置】->【环境变量】,系统变量里面的PATH变量的值。




2.打开Visual Studio2010命令提示符的两套方法。


其一,通过VS的菜单栏:



其二,通过开始菜单:







三、网络上流传的解决方案

 


浅墨之后google了一大圈,发现网络上流传的关于““Setting environment for using MicrosoftVisual Studio. 此时不应有\Mirosoft””解决方案有如下两个流派。


1. path变量清零法


 这个流派的原文地址:

http://hi.baidu.com/jsmlay/item/8314bb2bcb4e0b0376272ca9


其原文如下:

Setting environment for using MicrosoftVisual Studio 2010 x86 tools.

此时不应有/Utilities/Bin/x86";C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System3

2/Wbem;C:/Program Files/Microsoft SQLServer/90/Tools/binn/;C:/Program Files/Gem

plus/GemSafe Libraries/BIN/"等等的问题,导致各种命令工具不能使用的问题。

 

解决方案,将path环境变量中指明不应有路径复制到别处,然后在path先删掉,确定,退出cmd,重新进cmd执行操作,成功后再把path拷贝回去。”

 

点评:这种方案比较简单粗暴而且很弱。明知道path变量的错误在那里,不迎面解决,而是故意回避。这是治标不治本的方案。pass。

 


2 删除path变量错误地方的方法

 

 这个流派的原文地址:

http://www.myexception.cn/c-sharp/560512.html

 

其中说:


运行VS2008命令行工具就会出现  

Setting environment for using Microsoft Visual Studio 2008 x86 tools.  
此时不应有 /Utilities/Bin/x86";C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System3  
2/Wbem;C:/Program Files/Microsoft SQL Server/90/Tools/binn/;C:/Program Files/Gem  
plus/GemSafe Libraries/BIN/"等等的问题,导致各种命令工具不能使用的问题。  

解决办法:在系统环境变量设置中,删除Path变量中的"C:/Program Files/Microsoft DirectX SDK (June 2006)/Utilities/Bin/x86"。这是DirectX SDK中的Bug,导致双引用。”

 

点评:这种方案有些接近最终的解决方案了,它是在认真的解决错误而不是采取消极回避的方式。定位了错误在这句,他的做法是直接删除这条path。算是比较机智,但是会带来后遗症,或许因为删除了这个路径,之后基于DirectX SDK的程序,都跑不起来了。



再来看看浅墨经过思考后的解决方案吧。




四、浅墨的解决方案



浅墨发现,大概是因为系统的path变量中不允许写双引号”“,而在历代DirectX SDK安装的时候,DXSDK安装文件都会自动在Path变量中加上一句带双引号的DirectX SDK路径。这应该就是此问题的根源了。所以,解决方案很简单,将path变量DirectX SDK路径两边的双引号去除即可。或许只要在电脑上安装了DirectX SDK,打开Visual Studio命令提示符都会遇到这个问题。

 当然,不局限与DXSDK的路径,反正只要是在PATH变量的值里面,写了双引号之类的它不识别的字符,都会报类似的错误。

就是看环境变量中,是不是有填错的地方,比如末尾多写了一个反斜杠“/”,还是其中的变量加了双引号。

 PATH环境变量上面提到过,大家也应该肯定之前都清楚,在【我的电脑】->【属性】->【高级系统设置】->【环境变量】,系统变量里PATH变量的值。



这是浅墨之前报错时对应的PATH路径的值:

 

C:\Program Files (x86)\NVIDIACorporation\PhysX\Common;"D:\ProgramFiles (x86)\Microsoft DirectX SDK (June 2010)\Utilities\Bin\x86";%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\ProgramFiles (x86)\Intel\OpenCL SDK\3.0\bin\x86;C:\Program Files (x86)\Intel\OpenCLSDK\3.0\bin\x64;C:\Program Files (x86)\Microsoft SQLServer\100\Tools\Binn\;C:\Program Files\Microsoft SQLServer\100\Tools\Binn\;C:\Program Files\Microsoft SQLServer\100\DTS\Binn\;C:\Program Files (x86)\Autodesk\Backburner\;C:\ProgramFiles\Common Files\Autodesk Shared\;D:\Program Files (x86)\CMake2.8\bin;D:\Program Files (x86)\opencv\build\x86\vc10\bin;D:\Program Files(x86)\opencv\build\x64\vc10\bin;C:\Program Files (x86)\Microsoft SQLServer\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\MicrosoftVisual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files(x86)\Microsoft SQL Server\100\DTS\Binn\;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

 

其中,红色加粗的就是错误部分——"D:\ProgramFiles (x86)\Microsoft DirectX SDK (June 2010)\Utilities\Bin\x86"照成浅墨机器上报错“Setting environment for using Microsoft Visual Studio 此时不应有“系列问题的罪魁祸首。

 

当浅墨把其中的双引号去掉之后,先退出Visual Studio,再打开Visual Studio,通过菜单栏再次打开Visual Studio命令提示符的时候,就显示正常了:



 

这是浅墨更改之后的path变量的值:

 

C:\Program Files (x86)\NVIDIACorporation\PhysX\Common;D:\ProgramFiles (x86)\Microsoft DirectX SDK (June 2010)\Utilities\Bin\x86;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\ProgramFiles (x86)\Intel\OpenCL SDK\3.0\bin\x86;C:\Program Files (x86)\Intel\OpenCLSDK\3.0\bin\x64;C:\Program Files (x86)\Microsoft SQLServer\100\Tools\Binn\;C:\Program Files\Microsoft SQLServer\100\Tools\Binn\;C:\Program Files\Microsoft SQLServer\100\DTS\Binn\;C:\Program Files (x86)\Autodesk\Backburner\;C:\ProgramFiles\Common Files\Autodesk Shared\;D:\Program Files (x86)\CMake2.8\bin;D:\Program Files (x86)\opencv\build\x86\vc10\bin;D:\Program Files(x86)\opencv\build\x64\vc10\bin;C:\Program Files (x86)\Microsoft SQLServer\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\MicrosoftVisual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files(x86)\Microsoft SQL Server\100\DTS\Binn\;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

 

解决完这个问题,就继续开始Boost库的安装配置和编译了:



OK,大概就是这些了。

 

Microsoft Windows [版本 10.0.26100.3476] (c) Microsoft Corporation。保留所有权利。 C:\Windows\System32>d: D:\>cd D:\intelFPGA_lite\18.1\hls D:\intelFPGA_lite\18.1\hls>init_hls Assuming current directory (D:\intelFPGA_lite\18.1\hls\) is root of i++ Will use D:\intelFPGA_lite\18.1\hls\..\quartus to find Quartus for internal i++ use 信息: 用提供的模式无法找到文件。 Will be using Modelsim at D:\intelFPGA_lite\18.1\modelsim_ase\win32aloem\ Will be using Modelsim at D:\intelFPGA\18.1\modelsim_ase\win32aloem\ VisualStudio's link.exe is not on the path. Guessing its location. VS100COMNTOOLS environment variable is set to d:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools\. Looks like you have VisualStudio2010 installed. Using it. Setting environment for using Microsoft Visual Studio 2010 x64 tools. Adding D:\intelFPGA_lite\18.1\hls\bin to PATH Adding D:\intelFPGA_lite\18.1\hls\host\windows64\bin to PATH D:\intelFPGA_lite\18.1\hls>cd examples\counter D:\intelFPGA_lite\18.1\hls\examples\counter>build No target specified, defaulting to Available targets: test-x86-64, test-fpga, test-msvc, clean i++ -march=x86-64 counter.cpp -o test-x86-64.exe i++: Unable to determine the execution environment of the Intel(R) HLS Compiler. i++: Detailed error: Could not find root directory for the SDK: could not find the 'share' directory Run test-x86-64.exe to execute the test. D:\intelFPGA_lite\18.1\hls\examples\counter>test-x86-64.exe PASSED D:\intelFPGA_lite\18.1\hls\examples\counter>cd D:\intelFPGA_lite\18.1\hls\examples\counter\1_4 D:\intelFPGA_lite\18.1\hls\examples\counter\1_4>i++ -march=cyclonev --component mycomp -o interface interface.cpp i++: Unable to determine the execution environment of the Intel(R) HLS Compiler. i++: Detailed error: Could not find root directory for the SDK: could not find the 'share' directory
03-27
********************************************************************** ** Visual Studio 2022 Developer Command Prompt v17.14.9 ** Copyright (c) 2025 Microsoft Corporation ********************************************************************** C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools>pip install pysqlite3 Collecting pysqlite3 Using cached pysqlite3-0.5.4.tar.gz (40 kB) Preparing metadata (setup.py) ... done Building wheels for collected packages: pysqlite3 DEPRECATION: Building 'pysqlite3' using the legacy setup.py bdist_wheel mechanism, which will be removed in a future version. pip 25.3 will enforce this behaviour change. A possible replacement is to use the standardized build interface by setting the `--use-pep517` option, (possibly combined with `--no-build-isolation`), or adding a `pyproject.toml` file to the source tree of 'pysqlite3'. Discussion can be found at https://github.com/pypa/pip/issues/6334 Building wheel for pysqlite3 (setup.py) ... error error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [18 lines of output] running bdist_wheel running build running build_py creating build creating build\lib.win32-cpython-311 creating build\lib.win32-cpython-311\pysqlite3 copying pysqlite3\dbapi2.py -> build\lib.win32-cpython-311\pysqlite3 copying pysqlite3\__init__.py -> build\lib.win32-cpython-311\pysqlite3 running build_ext Builds a C extension linking against libsqlite3 library building 'pysqlite3._sqlite3' extension creating build\temp.win32-cpython-311 creating build\temp.win32-cpython-311\Release creating build\temp.win32-cpython-311\Release\src "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\bin\HostX86\x86\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMODULE_NAME=\"pysqlite3.dbapi2\" -I/usr/include -IC:\Python3114\include -IC:\Python3114\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" /Tcsrc\blob.c /Fobuild\temp.win32-cpython-311\Release\src\blob.obj blob.c C:\Users\Administrator\AppData\Local\Temp\pip-install-pufxsdna\pysqlite3_743a8bfc69ff4989a78046bc1bd8b71d\src\blob.h(4): fatal error C1083: 无法打开包括文件: “sqlite3.h”: No such file or directory error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX86\\x86\\cl.exe' failed with exit code 2 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pysqlite3 Running setup.py clean for pysqlite3 Failed to build pysqlite3 ERROR: Failed to build installable wheels for some pyproject.toml based projects (pysqlite3)
最新发布
07-17
<think>好的,我现在需要解决用户遇到的设置本地JMX时出现的“未指定的错误此时应有1”的问题。首先,我得回忆一下JMX的基本概念和配置方法。JMX(Java ManagementExtensions)是用于监控和管理Java应用程序的工具,用户可能在配置Kafka或其他Java应用的JMX时遇到了问题。错误信息中的“应有1”可能和参数设置有关,比如环境变量或启动参数的格式正确。接下来,我需要参考用户提供的引用内容。虽然引用中有提到Kafka集群的失效分区指标UnderReplicatedPartitions和生产者配置max.in.flight.requests.per.connection,但这些可能和当前问题关联大。过,引用[4]提到JVM的垃圾回收算法,这提醒我JMX配置可能涉及JVM参数,需要检查启动命令中的参数是否正确。可能的错误原因包括:环境变量中的空格或特殊字符、参数格式错误、端口冲突、权限问题或Java版本兼容性。例如,用户可能在设置JMX端口时,参数格式正确,比如漏掉了等号或使用了错误的选项。例如,正确的JMX参数应该类似于-Dcom.sun.management.jmxremote.port=9999,如果用户写成-Dcom.sun.management.jmxremote.port9999,少了等号就会出错。 另外,检查是否存在多个JMX配置冲突,或者防火墙阻止了端口访问。权限方面,如果用户没有正确配置SSL或认证,可能会导致连接问题。此外,Java版本的同可能影响参数的有效性,比如旧版本可能支持某些选项。 解决方案步骤可能包括:检查环境变量和启动参数格式,确保正确使用等号;验证端口是否被占用;检查Java版本是否兼容;查看日志文件获取更详细的错误信息;以及尝试简化配置排除其他因素干扰。例如,用户可以先使用最基本的JMX配置,逐步添加选项来定位问题所在。 同时,用户可能需要检查是否有特殊字符或空格在参数中,尤其是在Windows系统下,路径中的空格需要用引号包裹。例如,如果JMX参数中的路径包含空格,但没有使用引号,可能导致解析错误,出现“应有1”的提示。最后,建议用户查看官方文档或社区讨论,看看是否有类似问题的解决方案。例如,Kafka或Java的官方文档中关于JMX配置的部分,可能有特定的注意事项或示例命令,帮助用户正确设置参数。</think>### 设置本地JMX时出现“未指定的错误此时应有 1”的解决方案 此错误通常与JMX配置参数格式或环境变量设置有关。以下是逐步排查和解决方法: --- #### **1. 检查JMX启动参数格式** JMX本地配置需通过JVM参数实现,格式需严格遵循`-Dkey=value`模式。 **错误示例**: ```bash -Dcom.sun.management.jmxremote.port 9999 # 缺少等号 ``` **正确示例**: ```bash -Dcom.sun.management.jmxremote.port=9999 ``` **关键参数**: - `-Dcom.sun.management.jmxremote`:启用JMX - `-Dcom.sun.management.jmxremote.port=9999`:指定端口 - `-Dcom.sun.management.jmxremote.authenticate=false`:关闭认证(仅测试环境) - `-Dcom.sun.management.jmxremote.ssl=false`:关闭SSL --- #### **2. 检查环境变量中的特殊字符** 若通过脚本设置环境变量,需确保值中无空格或特殊符号。 - **Windows系统**:路径含空格时需用引号包裹,例如: ```bash set JMX_OPTS="-Dcom.sun.management.jmxremote.port=9999" ``` - **Linux系统**:使用反斜杠转义特殊字符。 --- #### **3. 验证端口冲突** 使用`netstat`命令检查端口是否被占用: ```bash netstat -ano | findstr :9999 # Windows lsof -i :9999 # Linux/Mac ``` 若端口被占用,需更换端口号或终止占用进程。 --- #### **4. 检查Java版本兼容性** 旧版Java(如JDK 6)可能支持部分JMX参数。建议升级至JDK 8+,并确保`JAVA_HOME`环境变量指向正确版本。 --- #### **5. 查看详细日志** 在启动命令中添加调试参数以获取更多信息: ```bash -Dcom.sun.management.jmxremote.ssl.need.client.auth=true -Djavax.net.debug=all ``` 日志可能暴露SSL配置、权限等问题[^1]。 --- #### **6. 简化配置逐步验证** **步骤**: 1. 仅启用基础JMX参数,排除其他干扰: ```bash -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false ``` 2. 若仍报错,检查应用日志或系统事件查看器(Windows)中的详细错误描述[^2]。 --- ###
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值