运行一些基于.NET的程序需要Java吗?

运行一些基于.NET的程序需要Java吗?,java,.net,windows,command,gnuwin32,Java,.net,Windows,Command,Gnuwin32,导言 其中一条注释是关于使用GnuWin的file命令来检查程序是否使用java。但是,GnuWin的file命令指示以下内容: C:\Windows\system32>file "C:\Program Files\Eclipse Foundation\eclipse\eclipse.exe" C:\Program Files\Eclipse Foundation\eclipse\eclipse.exe; PE32+ executable for MS Windows (GUI) Mon

导言

其中一条注释是关于使用GnuWin的file命令来检查程序是否使用java。但是,GnuWin的file命令指示以下内容:

C:\Windows\system32>file "C:\Program Files\Eclipse Foundation\eclipse\eclipse.exe"
C:\Program Files\Eclipse Foundation\eclipse\eclipse.exe; PE32+ executable for MS
 Windows (GUI) Mono/.Net assembly

C:\Windows\system32>
而java是运行程序所必需的,例如Eclipse、ApacheDS、ApacheDirectory Studio和Tomcat

关于这个问题的讨论导致在StackOverflow上提出一个关于基于.NET的程序和Java进程之间关系的问题

问题


为什么GnuWin的File命令表示某些程序是基于.Net的,虽然这些程序需要Java才能运行?

Eclipse.exe不是一个Java程序:它实际上是一个本机win32可执行文件,用于使用适当的命令行参数和包含实际Eclipse Java可执行文件的JAR文件路径来定位和启动JVM


有关完整详细信息,请参见示例。

是否可以使用Apacheds添加file命令的输出?如果您关闭了java.exe,那么在运行Eclipse时,它是否会创建java.exe的实例?阿帕切德人也有同样的问题。当您关闭java.exe然后运行ApacheDS时,它是否会启动java.exe?C:\Windows\system32>file“C:\Program Files(x86)\ApacheDS\bin\wrapper.exe”C:\Program Files(x86)\ApacheDS\bin\wrapper.exe;PE32 MS Windows可执行文件(控制台)英特尔80386 32位C:\Windows\system32>C:\>tasklist|grep java.exe java.exe 5180服务0 65896 K C:\>tasklist|grep wrapper.exe wrapper.exe 5484服务0 4264 K C:\>taskkill/im java.exe/f成功:带PID 5180的进程“java.exe”已终止。C:\>tasklist | grep java.exe C:\>tasklist | grep wrapper.exe C:\Windows\system32>net start apacheds default apacheds-default服务正在启动。。。。。。。。。。ApacheDS-default服务已成功启动。C:\>tasklist | grep wrapper.exe wrapper.exe 5220服务0 4248 K C:\>tasklist | grep java.exe java.exe 6112服务0 65796 K C:\>