我的PC上没有太多内存,处理器也很弱。尽管到目前为止,netbeans是我最喜欢的IDE,但是在我现有的计算机上使用它几乎是无法忍受的,因为打开程序时,项目扫描会自动开始。
有没有办法防止Netbeans扫描项目?
我的PC上没有太多内存,处理器也很弱。尽管到目前为止,netbeans是我最喜欢的IDE,但是在我现有的计算机上使用它几乎是无法忍受的,因为打开程序时,项目扫描会自动开始。
有没有办法防止Netbeans扫描项目?
Answers:
除了为您真正使用的文件夹创建较小的项目,然后为它们分组的项目组(Mateng)之外,您还可以尝试排除那些永远不会使用的images
文件夹,例如文件夹等。要忽略这些文件夹,请转到:
File > Project Properties > Ignored Folders > Add Folder...
从NetBeans帮助:
“忽略的文件”属性与“包含路径”相反。这些是PHP项目中的文件,您希望IDE忽略这些文件以进行FTP上传,扫描等。
node_modules
例如肯定提高NetBeans的表演)
试试这个:http : //wiki.netbeans.org/ScanOnDemand
警告:目前,此插件仅适用于开发版本。请勿在官方版本中使用这些说明...
一旦启动NetBeans IDE,系统就会进行所谓的“最新检查”,以验证没有文件被更改。如果这在您看来需要太长时间,并且妨碍您执行工作,则可能对ScanOnDemand感兴趣。
ScanOnDemand的最基本功能是在IDE启动后禁用(可能很长)最新检查。这样做是在对您的源代码进行的大多数操作都在IDE内部完成的期望下完成的,因此,在IDE关闭时,不会发生重大更改,因此不需要重新扫描任何内容。确实,这可能并不完全准确,但是修复很容易,在极少数情况下,您使用其他工具对源进行了重大更新,只需手动触发刷新即可。
NetBeans IDE再次为您提供了更多控制权。您负责,决定做什么以及何时...
为了在这方面提供帮助,我们决定创建一个实验模块,该模块可在Update Center(自6.7版开始)上获得。该模块在某些情况下会忽略自动更新(例如,启动后和切换到主窗口后的最新检查)。调用重新扫描以使数据保持最新状态的责任在于用户-通过显式刷新操作...
停止NetBeans扫描项目:
Menu -> Tools -> Options -> Miscellaneus -> Files -> Uncheck Enabel auto-scanning
我知道这是一个老问题,但这可能对其他人有帮助...要启用或禁用后台扫描,您可以在工具->选项->其他->文件下找到该选项
https://blogs.oracle.com/netbeansphp/entry/enable_auto_scanning_of_sources
我不知道您是否可以禁用项目扫描。即使可以,我也怀疑它能否再次正常工作。我已经完成了一些提示,它可以加快Netbeans的速度。
Netbeans消耗大量内存,因此添加内存还可以提高其性能(内存不足时,OS无需在内存和页面文件之间进行交换)(但这不是您的选择)。另外,Netbeans由数百个文件组成,这些文件在启动时需要加载,因此最根本的问题就是硬盘的速度。
对于Netbeans 8。* +,Zeophlite的答案中的ScanOnDemand插件不起作用。请改用MasterFileSystemSuspend,因为它是最新的,并且在稳定发行版上可以正常工作。
用于控制NetBeans IDE何时对更改做出反应以及何时忽略更改的插件。使用其他用户操作在保存时进行编译的有用补充-通过将IDE置于挂起模式,人们可以执行(并完成)命令行操作,然后才能打开IDE。
该插件的代码在main / contrib存储库中。该插件可以从下载媒体:ORG-netbeans的模块-masterfs-suspend.nbm和安装(工具/插件/下载)到的NetBeans 8.0,8.1,8.2。
安装后,工具栏中将出现一个新图标,单击该图标可以暂停IDE进行的自动刷新。在NetBeans 8.2和更高版本中使用Truffle源时非常有用。
该模块是先前ScanOnDemand模块的便捷替代品。
就个人而言,这使我的netbeans通用内存消耗从闲置期间的20gb +减少到了大约2gb,并为扫描器不断挂起和泄漏内存提供了一个很好的解决方法,特别是在非常大的项目或具有大量符号链接的项目中。
这在下面为我解决了。打开一个项目将导致永无休止的后台扫描...这也意味着代码完成等永远无法正常工作。我的机器为此投入了大量资源。
这里的人给了我一个提示:右键单击项目,选择属性,然后单击“忽略的文件夹”。
基本上,我用它来确定哪个(特定)文件夹是扫描的原因。我选择了上半部分,然后选择了剩余部分的下半部分,这样就消除了...从数百个文件夹中,我发现了一个(导致该问题的php HMVC view文件夹)...我需要停止并杀死该文件夹扫描,然后重新启动多次...
由于各种原因,这是最简单的方法:
在“忽略文件夹”区域中,选择所有文件夹并将它们全部添加(完全独立地)到忽略列表。然后关闭ide,然后重新启动。如果没有所有后台扫描(正常启动并运行几秒钟/分钟),请开始删除一个或几个文件夹。每次删除后,关闭属性窗口..... IDE将快速扫描您删除的那些文件夹,如果这些文件夹没有问题,则停止扫描。如果您刚刚删除了罪魁祸首文件夹,那么扫描将永远不会结束...
我也偶然发现了这个问题。
最简单的方法是编辑netbeans配置,以免加载所有项目。您可以随时从菜单中重新打开其他项目。一旦您关闭所有使用的项目,一旦您启动netbeans,它们将不会被扫描
解决方案: 只需更改etc文件夹下的netbeans.conf中的以下行
#$ {HOME}将替换为JVM user.home系统属性netbeans_default_userdir =“ $ {HOME} /。netbeans / changeme”
netbeans.conf
文件更改解决方案对我不起作用。
我也遇到了与netbean 8.2相同的问题。我只是通过以下方式删除了该项目:-右键单击该项目-删除该项目(保持取消选择Delete source code option)。-再次创建新项目
并且现在可以完美运行了。
希望它的工作。
试试这个Netbeans插件。这样可以减轻负载。
就我而言,使用jdk 1.8时,存在多个静态导入时会有一个大问题(请参见示例)。看来javac有问题。检查此类.java文件时,编译器非常慢,而NetBeans扫描非常慢。每次重复进行静态导入,似乎编译和扫描时间都非常快地增加了。因此,如果是这种情况,只需删除重复的导入
package ru.cntp.demo;
import java.math.BigDecimal;
import static java.util.Arrays.asList;
import java.util.List;
import java.util.Map;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.groupingBy;
/**
*
* @author sergiu
*/
public class EmployeeRepository {
public Map<Department, Map<String, Map<String, Map<String, Map<BigDecimal, List<Employee>>>>>> getEmployeesByDepartment() {
Country germany = new Country("Germany");
Department germanyDeptOne = new Department("Dept One", germany);
Employee emp1 = new Employee("Surame", "Name", "Patronymic", BigDecimal.TEN, germanyDeptOne);
return asList(emp1).stream()
.collect(groupingBy(Employee::getDepartment,
groupingBy(Employee::getSurname,
groupingBy(Employee::getName,
groupingBy(Employee::getPatronymic,
groupingBy(Employee::getSalary))))));
}
}
使用以下步骤可以提高Netbeans的扫描性能:
1)转到窗口->文件。这将打开“文件”选项卡。
2)在每个打开的项目的“文件”选项卡中,打开nbproject文件夹,并在其中打开project.properties文件。
3)现在,在此文件中,在属性“排除”下方,列出了所有引用的库(JAR)的
文件引用。4)可能存在一些重复的文件引用,这些文件引用的路径可能很旧或在其他人的机器上(如果正在工作)分组并从某人的机器上传输项目)
5)删除那些旧的路径引用。
范例-
excludes=
file.reference.xyz.jar=../not/correct/path.jar //delete this line
file.reference.xyz.jar-1=../correct/path.jar //remove -1
....
includes=**
6)还找到属性“ javac.classpath”,并删除与如上所述删除的引用相对应的不必要的类路径条目。
范例-
javac.classpath=\
${file.reference.xyz.jar}:\ //delete this line
${file.reference.xyz.jar-1}:\ //remove -1
....
javac.compilerargs=
7)因此,现在文件引用部分中提到的文件引用和javac.classpath属性相同,并且指向您的计算机或网络上的有效库(JAR)地址。
范例-
excludes=
file.reference.xyz.jar=../correct/path.jar //the correct reference & path
....
includes=**
....
javac.classpath=\
${file.reference.xyz.jar}:\ //the correct classpath entry for reference
....
javac.compilerargs=
....
上面的过程起作用的原因(以我为例)是因为它阻止Netbeans扫描您的机器/网络上可能不存在的不必要的库路径。
我有最快最简单的方法。
只需将netbeans元数据放到另一个位置,而不是将其放在项目目录中
如果您的项目是Maven结构化项目,则可以使用简单的技巧来简化NetBeans和NetBeans的生活。
我的机器上的c:\ dev里面有我的项目。那就是Netbeans与之合作的地方。如果我在此文件夹中构建,则NetBean的后台进程将变得非常繁忙。
但是,如果我在c:\ build \ trunk内部启动mvn clean install之前将c:\ dev \ trunk项目复制到c:\ deploy \ trunk,则NetBeans不需要扫描此文件夹中发生的更改。它不知道。
我在Windows机器上使用:
robocopy c:\ dev \ trunk c:\ deploy \ trunk / MIR / NFL / NS / NC / NDL / XD“ .svn”
这是Windows本机命令。无需其他安装。
它帮助我大大减少了构建时间,还避免了永不停止对Netbeans的扫描。
如果使用类似JRebel的工具,则将更改的类更新到c:\ deploy \ trunk文件夹后,仍可以像这样工作。您可以使用相同的命令。
当然,这是一种变通方法,但它会有所帮助。:-)
随着时间的流逝,我的项目变得非常庞大
在以下两种情况下,速度太慢:
对我不起作用的是:
1.执行窗口>重置Windows仅能暂时解决
2.有时觉得我的GIT存储库与Netbeans集成是主要问题,但尚无明确证据
解决方案1):
运行以下命令:
警告以下命令具有自动删除命令
Close the Netbeans IDE
cd %USERPROFILE%\AppData\Local\NetBeans\Cache\ && del /s /q .\ && rmdir /s /q .\
cd %USERPROFILE%\AppData\Roaming\NetBeans\8.2\var\filehistory\ && del /s /q .\ && rmdir /s /q .\
cd %USERPROFILE%\AppData\Roaming\NetBeans\8.2\var\log && del /s /q .\ && rmdir /s /q .\
而且,问题1)现在很少出现,而其他时候Netbeans几乎立即加载。
解决方案2):
根
.... f1
........ f11
........ f12
.... f2
........ f21
........ f22
root是一个文件夹,也是NetBeans主项目
f1,f2只是文件夹
f11,f12,f21,f22是子文件夹,它们也是NetBeans项目
早些时候,我打开了Netbeans根项目,由于Netbeans从根目录扫描整个项目,系统变得太慢,并且防病毒软件非常努力地与Netbeans项目扫描配合使用,导致系统中的所有内容变慢。
现在,解决方案是打开子项目,例如f11,f12,f21,f22等。您可以打开许多小子项目,Netbeans项目扫描问题已完全解决。
由于“扫描项目...”占用了我的CPU,我的Netbeans 8.0.2在Macbook pro上将崩溃。我无法停止该过程,但是,可以通过增加netbeans.conf中的Java堆内存来使该过程更快地完成。
$ vi /Applications/NetBeans/NetBeans\ 8.0.2.app/Contents/Resources/NetBeans/etc/netbeans.conf
替换为:
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true"
与:
netbeans_default_options="-J-client -J-Xss2m -J-Xms2048m -J-Xmx2048m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true"