我的一些不那么谨慎的同事已经绕过<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script src="http://mjsarfatti.com/sandbox/nestedSortable/jquery.mjs.nestedSortable.js"></script>
<div id="main-lists-container"></div>
个实例并且假设可以安全地呼叫Optional
而不先调用get
我知道......这不应该发生,但类型系统不会阻止它们!
所以,我希望IntelliJ能够做到这一点。是否可以配置IntelliJ,以便在不先调用isPresent
的情况下警告(甚至抛出编译错误)关于调用Optional.get()
?
答案 0 :(得分:2)
IntelliJ 2016.1支持这种开箱即用的功能!
默认情况下,在未经get()
验证的情况下调用isPresent()
会发出警告,但您可以转到“检查”屏幕并将Optiong.get() without isPresent() check
设置为严重性为“错误”,如果你更喜欢。
答案 1 :(得分:0)
您可以使用检查来标记实例并向您显示警告/错误。这可能是终极专属。
要添加自定义检查,请按照https://www.jetbrains.com/idea/help/creating-custom-inspections.html或执行此操作:
根据您的问题配置检查:
保存更改并运行检查。 (CTRL + Shift + Alt + I,键入“结构搜索检查”)。这应该显示Optional.get()的所有实例。
编辑:在您的问题中,您询问是否可能出现编译错误。我相信这将严格取决于您如何构建代码。如果您添加检查并将错误级别设置为“错误”,则它应该在Make / Compile上失败但在'mvn install'上失败。