idea右键没有java class选项问题解决方案

一、背景

项目中新建module之后,要在该目录下新增java Class文件,右键——》New发现无Java Class选项。

二、办法

File –Project Structure或者ctrl+alt+shift+s 快捷键或者右上角搜索按钮旁边的Project Structure图标,打开Project Structure窗口,然后打开Modules,选择不能创建java class文件的模块,选中src目录,右键或者直接点击marks as 后面的sources

三、原因

如上图mark as 选项所示,我们可以对项目的任意目录进行这五种目录类型标注:

  • Sources : 一般用于标注类似 src 这种可编译目录。有时候不仅 src 目录需要可编译,还有其他一些特殊目录也需要可编译,就需要对该目录进行此标注。只有 Sources 这种可编译目录才可以新建 Java 类和包,这一点要注意。
  • Tests :一般用于标注可编译的单元测试目录。在规范的 maven 项目结构中,顶级目录是 src,maven 的 src 我们是不会设置为 Sources 的,而是在其子目录 main 目录下的 java 目录,我们会设置为 Sources。而单元测试的目录是 src - test - java,这里的 java 目录我们就会设置为 Tests,表示该目录是作为可编译的单元测试目录。
  • Resources :一般用于标注资源文件目录。在 maven 项目下,资源目录是单独划分出来的,其目录为:src - main -resources,这里的 resources 目录我们就会设置为 Resources,表示该目录是作为资源目录。资源目录下的文件是会被编译到输出目录下的。
  • Test Resources :一般用于标注单元测试的资源文件目录。在 maven 项目下,单元测试的资源目录是单独划分出来的,其目录为:src - test -resources,这里的 resources 目录我们就会设置为 Test Resources,表示该目录是作为单元测试的资源目录。资源目录下的文件是会被编译到输出目录下的。
  • Excluded : 一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。

对于非 maven 项目我们只要会设置src即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • IntelliJ IDEA引入第三方jar包或查看Java源码的时候报decompiled.class file bytecode version:52.0(java 8)错误的解决办法

    引入第三方jar包或者查看Java源码的时候,经常遇到问题如下: decompiled.class file bytecode version:52.0(java 8) ,open source file. 翻译一下上面的意思:(反编译 .class文件中的字节码 到Java 8 版本) 打开源文件 其实这个时候,你就得注意一下,你看到文件是 .class文件,还是 .java文件. 然后我就详细的总结了一下,二者的差别: 1.先是理论知识: .java为Java的源文件后缀,编写的代码需要写在

  • IDEA JavaWeb项目启动运行后出现404错误的解决方法

    404这个错误真的是一言难尽!不过大多是配置文件出错,认真修改还是可以的 1.web.xml配置错误: 默认首页没有写的,在web.xml添加一个就行(前提是你有jsp页面,名字不要写错): 比如这个: <welcome-file-list> <welcome-file>Login.jsp</welcome-file> </welcome-file-list> 2.IDEA JavaWeb项目运行找不到对应Servlet映射的JSP页面 在servlet3.

  • java通过Idea远程一键部署springboot到Docker详解

    一.开发前准备 1. Docker的安装可以参考https://docs.docker.com/install/ 2. 配置docker远程连接端口 vi /usr/lib/systemd/system/docker.service 找到 ExecStart,在最后面添加 -H tcp://0.0.0.0:2375,如下图所示 3. 重启docker systemctl daemon-reload systemctl start docker 4. 开放端口 firewall-cmd --zon

  • eclipse/IDEA配置javafx项目步骤(图文教程)

    在配置javafx之前,需要到Oracle或openJFX的官网下载javafx压缩包并解压,解压路径最好和Java的jdk放在同一目录方便寻找,在下载解压javafx包之后,开始配置javafx项目: 一:eclipse如何配置javafx 1.安装e(fx)clipse 在安装e(fx)clipse之前eclipse是没有创建javafx项目这一选项的 新建项目选择其它(CTRL + N),在选项卡里面并没有javafx项目选项 这时需要我们安装e(fx)clipse插件:在eclipse菜

  • IntelliJ IDEA中折叠所有Java代码,再也不怕大段的代码了

    问题: 在Java文件中,想把所有的Java方法代码都一次性给折叠起来,用哪个点开哪个. 问题来源: 在新建model bean的时候,要是属性很多,那么对应的getter和setter就会很多,要是所有的方法代码都是展开状态,那么这个文件看着也不甚美观,所以,可以把方法都折叠起来. 下面看怎么设置快捷键:看法宝. 要是看不懂,系统自带的快捷键配置,大可以,自己再修改个,就像这个折叠代码的这个快件,折叠一个方法的快捷键是:  ctrl + 减号. 我就把折叠所有的快捷键设置成:ctrl+shif

  • idea中创建maven的Javaweb工程并进行配置(图文教程)

    学完maven后,可以创建maven的javaweb工程,在创建完成后还需要一些配置,下面来说下具体步骤,在这里我创建的是一个模块,创建web项目的方式和创建模块一样 1.创建一个模块,点new-Module 2.选择maven,然后把对勾打上,选骨架,一定要选择第二个webapp骨架,如图 3.设置GroupId和ArtifactId,ArtifactId最好设置的和模块名称一样 4.设置maven的相关信息,如图 5.设置模块的名称和存储位置 6.点击完成,当出现红框中的内容的时候表示创建成

  • 基于idea 的 Java中的get/set方法之优雅的写法

    曾几何时,我们写代码的时候,每次写Bean的时候都会使用快捷键生成get/set方法,有时候我经常会想,既然每一个Bean我们都会给其提供get/set方法,那么为什么还有会这个东西哪?(当然这只是一个问题,毕竟还是很有用的,这一点就是Java语言中的private.public等作用域) 今天说的当然不是这个,我们讨论的是希望有一种优雅的方式编写我们的get/set方法或者说是一种优雅的简化.那我们就说一下今天的主角吧! Lombok Java代码简化神器!就是如此美妙! Lombok是一个可

  • idea右键没有java class选项问题解决方案

    一.背景 项目中新建module之后,要在该目录下新增java Class文件,右键-->New发现无Java Class选项. 二.办法 File –Project Structure或者ctrl+alt+shift+s 快捷键或者右上角搜索按钮旁边的Project Structure图标,打开Project Structure窗口,然后打开Modules,选择不能创建java class文件的模块,选中src目录,右键或者直接点击marks as 后面的sources 三.原因 如上图mar

  • 详解Java分布式Session共享解决方案

    分布式Session一致性? 说白了就是服务器集群Session共享的问题 Session的作用? Session 是客户端与服务器通讯会话跟踪技术,服务器与客户端保持整个通讯的会话基本信息. 客户端在第一次访问服务端的时候,服务端会响应一个sessionId并且将它存入到本地cookie中,在之后的访问会将cookie中的sessionId放入到请求头中去访问服务器,如果通过这个sessionid没有找到对应的数据那么服务器会创建一个新的sessionid并且响应给客户端. 分布式Sessio

  • java.lang.NumberFormatException异常解决方案详解

    前言:        在做后台时用的jsp开发,在页面向controller传参时用String接收的参数,但是数据库实体中jies接收该参数时是int类型,做了一下强制转换,但是没有判断去空格,结果页面加载时就报500错误了. 错误截图: 在报错后注意分析报错信息,如上图提示在ShopController.java 的92行出错了,那么错误就很容易定位了,去看那里的代码. 错误关键字 java.lang.NumberFormatException 这句话明确告诉了我们是数字格式异常,接着后面有

  • Java OOM原因以及解决方案

    1)什么是OOM? OOM,全称"Out Of Memory",翻译成中文就是"内存用完了",来源于java.lang.OutOfMemoryError.看下关于的官方说明: Thrown when the Java Virtual Machine cannot allocate an object because it is out of memory, and no more memory could be made available by the garba

  • Java线程安全问题的解决方案

    目录 线程安全问题演示 解决线程安全问题 1.原子类AtomicInteger 2.加锁排队执行 2.1 同步锁synchronized 2.2 可重入锁ReentrantLock 3.线程本地变量ThreadLocal 总结 前言: 线程安全是指某个方法或某段代码,在多线程中能够正确的执行,不会出现数据不一致或数据污染的情况,我们把这样的程序称之为线程安全的,反之则为非线程安全的.在 Java 中, 解决线程安全问题有以下 3 种手段: 使用线程安全类,比如 AtomicInteger. 加锁

  • java开发主流定时任务解决方案全横评详解

    目录 引言 Crontab 目标定位 使用方式 实现原理 方案分析 Spring Task 目标定位 使用方式 实现原理 方案分析 ElasticJob 目标定位 使用方式 实现原理 方案分析 XXLJob 目标定位 使用方式 实现原理 方案分析 Serverless Job 目标定位 使用方式 实现原理 方案分析 总结 引言 定时任务作为一种按照约定时间执行预期逻辑的通用模式,在企业级开发中承载着丰富的业务场景,诸如后台定时同步数据生成报表,定时清理磁盘日志文件,定时扫描超时订单进行补偿回调等

  • Java mybatis常见问题及解决方案

    我们建立目录时一定得是这个格式 java中的目录结构和resource中的机构一定要一样,这是为了配置文件能准确映射到相应 注意看我的Java中有一个方法july.wild.dao.IUserDao,在resources中也有一个配置文件july/wild/dao/IUserDao.xml注意这个写法,不能变,因为我们在java目录下创建的是子包,而在resources目录下创建的时子目录,如果改了就会有提示找不到文件 当因为maven版本问题时: maven报错:不再支持源选项 5.请使用 7

  • spring的xml文件打开没有namespace等操作选项的解决方案

    目录 spring xml文件打开没有namespace等操作选项 第一步 第二步 第三步 spring suite tool 选择Namespace缺少mvc命名空间 spring xml文件打开没有namespace等操作选项 第一步 查看自己安装的eclipse的正确的版本号: 打开eclipse,点击help-->about eclipse IDE---->就可以看到你自己的eclipse对应的版本号 第二步 http://spring.io/tools3/sts/legacy到插件的

  • Java ThreadLocal 线程安全问题解决方案

    一.线程安全问题产生的原因 线程安全问题都是由全局变量及静态变量引起的 二.线程安全问题 SimpleDateFormate sdf = new SimpleDateFormat();使用sdf.parse(dateStr);sdf.format(date);在sdf内有一个对Caleadar对象的引用,在源码sdf.parse(dateStr);源码中calendar.clear();和calendar.getTime(); // 获取calendar的时间 如果 线程A 调用了 sdf.pa

  • sonar-scanner连接sonarquebe7的sonar.java.binaries问题的解决方案

    Sonar-Scanner连接新版SonarQube7提示org.sonar.squidbridge.api.AnalysisException,暂定将sonar-java-plugin降到4.10恢复正常使用. 现象描述 以一下版本Sonar-Scanner连接SonarQube进行Maven项目的代码检测,没有任何问题. Sonar-Scanner命令 使用命令sonar-scanner,使用-D传入以下参数 问题描述 在仅仅升级了SonarQube到7.0之后,使用同样的sonar-sca

随机推荐