是否可以在 eclipse.ini 文件中添加注释
Posted
技术标签:
【中文标题】是否可以在 eclipse.ini 文件中添加注释【英文标题】:Is it possible to add comments to eclipse.ini file 【发布时间】:2011-09-02 12:08:16 【问题描述】:我想评论一些我现在正在使用的自定义参数,以便在我下次编辑时记住它们为什么会出现。
但是我在这个文件中找不到任何对 cmets 的引用。只有this,但它已经很老了,希望现在有办法添加cmets。
有人知道吗?
【问题讨论】:
这不是最好的解决方案,但是将 eclipse.ini 的备份保存到一个 txt 文件中怎么样,比如说,然后评论那个。我真的不认为你可以评论 ini 文件 我无法编辑我之前的评论。更新:在 Wikipedia 上,据说 windows cmets 上的 ini 文件是使用分号 (;) 相当晚的评论,但我遇到了同样的问题,似乎只有 # 在 Linux 上对我有用。分号会导致错误。 在 Windows 上;
不起作用。 #
没关系。
【参考方案1】:
Eclipse 4.5.2 在 Windows 7 上,# 为我工作。
但请注意,键值在eclipse.ini
中的单独行中,您需要同时注释掉键值。我添加了一个示例。
工作
#-clean
-startup
plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar
-showlocation
#-vm
#C:/dev/software/jdk1.8.0_121/bin/javaw.exe
-vm
C:/dev/software/jdk1.8.0_131/bin/javaw.exe
不工作
-vm
#C:/dev/software/jdk1.8.0_121/bin/javaw.exe
C:/dev/software/jdk1.8.0_131/bin/javaw.exe
【讨论】:
【参考方案2】:在 Ubuntu 和 Linux Mint(基于 Debian 的操作系统)中,您可以使用 #
;
无法在 Ubuntu / Linux Mint 中运行。
【讨论】:
【参考方案3】:评论可以用分号 (;
) 或哈希 (#
) 标记(至少在 Windows 上)
【讨论】:
仅 # 在带有 Eclipse Luna (RC2) 的 Windows 8.1 上工作。另外,我发现以 # 开头的 cmets 必须在它们自己的 eclipse.ini 行中 - 即行尾 cmets 会导致 Eclipse 启动失败。 正如上面提到的 4e6,# 适用于 Linux。我用 Eclipse Kepler 对其进行了测试。【参考方案4】:Thomas,我不相信您对您遇到的问题的分析,因为您没有显示可能导致该问题的 eclipse.ini 文件。
我也有 Windows 7,但 eclipse.ini 中的“#”没有问题。如果查看 EquinoxFwConfigFileParser 类的源代码,您会发现它使用 Java Properties.load(FileInputStream) 方法读取 *.ini 文件。因此,由于“#”在 Java 属性文件中用作注释信号,因此它在 eclipse.ini 中也用作注释信号。
但让我们只看现象。 *.ini 文件出现在 eclipse 安装中的许多地方,例如安装目录的配置子目录中的 config.ini 文件。开头是这样的:
#此配置文件由:org.eclipse.equinox.internal.frameworkadmin.equinox.EquinoxFwConfigFileParser 编写 #2017 年 2 月 10 日星期五 15:57:47 CET org.eclipse.update.reconcile=false ...“#”似乎不太可能在此处用作注释信号,但在具有相同结构的 eclipse.ini 中则不行。 (我们现在知道它只是一个 Java 属性文件的结构。)
您的错误信息
...在索引 0 处的方案名称中:%23C:/Program%20Files/Java/jdk1.8.0_92/bin/javaw.exe可能来自一些带有两行的ini,如下所示,可以出现在eclipse.ini中:
-vm #C:/Program Files/Java/jdk1.8.0_92/bin/javaw.exe“#”是 Windows 文件/目录名称中的合法字符。 “-vm”后面的行应该是一个文件名,或者更确切地说是一个 URI。如果没有找到指定的 javaw.exe,eclipse 启动器将采用它在 PATH 环境变量中找到的一个。
这个例子
-vm #你好 #K:/studevaux/dev_javaver64/jdk8/bin/javaw.exe -vmargs启动 Eclipse 工作正常 - 但正如我意识到的那样,因为我的系统 PATH 中有一个 javaw.exe。当我消除它时,我收到一条错误消息:
Error message: no java.exe found to start eclipse
【讨论】:
【参考方案5】:在eclipse.ini
中的那些 cmets 上有点精度,至少对于 Windows (7)。
奇怪的是,使用前导“#”可能会导致插件管理问题。
这里是一个卸载的例子:
An error occurred while uninstalling
session context was:(profile=epp.package.java, phase=org.eclipse.equinox.internal.p2.engine.phases.Uninstall, operand=[R]com.test.myeclipseplugins 1.2.3 --> [R]com.test.myeclipseplugins 1.2.4, action=org.eclipse.equinox.internal.p2.touchpoint.eclipse.actions.UninstallBundleAction).
java.net.URISyntaxException: Illegal character in scheme name at index 0: %23C:/Program%20Files/Java/jdk1.8.0_92/bin/javaw.exe
java.net.URISyntaxException: Illegal character in scheme name at index 0: %23C:/Program%20Files/Java/jdk1.8.0_92/bin/javaw.exe
不幸的是,这个“%23”字符是您的前导“#”。 避免这个问题的唯一方法似乎就是避免使用 cmets :(
在这种情况下,我真正不所做的是,这个“#”不会阻止 Eclipse 启动(其他“坏”的情况也是如此)诸如“;”或“//”之类的字符),但是 then 会使其他功能崩溃,而堆栈跟踪并不那么明显(当卸载插件并面对以前的堆栈时,您会首先想到一个问题在eclipse.ini
?)
【讨论】:
以上是关于是否可以在 eclipse.ini 文件中添加注释的主要内容,如果未能解决你的问题,请参考以下文章