Scala eclipse 错误 -找不到或无法加载主类

错误: 找不到或无法加载主类 quickanswer.chapter8.p1
 

Scala project won't compile in Eclipse; “Could not find the main class.”

 
 
原因,是项目中源代码有错误,eclipse 就不编译其他源代码了,但是 eclipse 左边的树确没有错误的提示,让人以为项目中没有代码方面的错误
 
但是 eclipse 左边的树确的红叉是怎么消失的?
 
 
 
project->clean 操作后,左边树的错误提示就消失了...   这  bug!!!啊 
 
 
再仔细点发现,消失红叉的是java文件,如果scala文件出错了还是有红叉提示的
 
原来混合java 和scala的不编译的问题已经是世界人民的问题啊
 
 
混合java 和scala 不编译的问题   "Project | Clean
It's a tricky one: solving this properly requires deeper cooperation
between the Scala and Java compilers than is present at the moment.
IMO the best line of attack is a more general one which addresses the
joint-compilation problem for all JVM languages that want to play ...
there's been some discussion of this on the JVM languages list
recently,(解决这个问题需要更深层次的scala和java编译器之间的合作)
 
 
 joint compile java  scala  mix 混合编译的解决办法 是用maven,在maven 里配置编译顺序 ,先scala后java  或者 先java后scala
 
 不过,最新版(

Version 4.2.0

)是这么介绍的

Features

Support for Mixed Scala/Java Projects

Support for mixed Scala/Java projects and any combination of Scala/Java project dependencies, allowing straightforward references from Scala to Java and vice versa.
所以呢,不是eclipse 不支持混合java 和 scala  ,只是支持的还不是很好,还是有bug 的
 
 
至于在eclipse 开发,目前只有自己小心点了吧,保证java和scala编译时不出错哦,如果java文件有错误,再clean,左边java文件的错误提示会消失哦,照成找问题的困难度哦
 
 
或者在某些情况可以试试这些操作吧:
调整编译器顺序:右键项目-properties-scala Compiler -Build manager  :  set the compile order to JavaThenScala instead of Mixed

 

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
题目如下 有a1和a2都是为无符号数组,al1和al2为数组的长度,数组的长度为偶数。 无符号数组有一对数字区间组成。 例如: a1={0,1,3,6,10,20,4,5};           a2={0,1,20,30,50,4,5};  其中:a1表示为下区间[0,1],[3,6],[10,20],[4,5];             a2标示为下区间[0,1],[20,30],[35,0],[4,5]; 则:计算a1和a2重叠的下区间个数。例如:a1和a2重叠下区间为[0,1][4,5]个数为2。

在主表中动态插入子表字段 - 2015-11-01 17:11:34

   库表dColThread是主表,主键是tID。dColQuestion是子表,外键是tID,如下:   dColThread:      dColQuestion;      报表需要根据ApplicationName查询主表并以列表的形式展现数据。主表每条记录对应的status字段值有多个,但不超过5个,需要横向插入主表的Phone、Decline字段之间,依次命名为QuestionNo1、QuestionNo2…QuestionNo5。如果某列数据都为空,则这一列不显示。表样形如:   用集算器
Jdk1.6 JUC源码解析(25)-ConcurrentHashMap 作者:大飞   功能简介: ConcurrentHashMap是一种线程安全的HashMap。相对于HashTable和Collections.synchronizedMap(),ConcurrentHashMap具有更好的性能和伸缩性,是由于其使用了分段锁的策略,将内部数据分为多个段,每个段单独加锁,而不是整个HashMap加锁,这样能减少很多不必要的锁争用。   源码分析: ConcurrentHashMap实现了Concurr

jsp获取客户端IP地址的方法 - 2015-11-01 17:11:22

本文实例讲述了jsp获取客户端IP地址的方法。分享给大家供大家参考,具体如下: public static String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("X-Forwarded-For"); if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("Proxy-Cl

[初级]设计模式--装饰模式 - 2015-11-01 17:11:18

  /** * 装饰模式 * * 类似于代理模式 * 与代理的区别: * 1、真实角色持有(?) * 代理:代理角色并不一定需要调用者提供真实角色(调用者不需要持有真实角色) * 装饰:调用者需要持有真实角色,并提供给装饰器 * 2、真实角色控制 * 代理:代理角色返回任意真实角色,甚至不返回真实角色 * 装饰:对传入的真实角色进行装饰,然后将装饰后的角色返回 * * 代理:我通过 代理(代理角色) 买一套精装修的房子 * 装饰:我先买房,再找 人(装饰角色) 给我装修 */public class De
本文实例讲述了纯jsp实现的倒计时动态显示效果代码。分享给大家供大家参考,具体如下: %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%div id="showTimes"/div% long current_time=System.currentTimeMillis(); long end_time=1337875200000l; long time=end_time-current_time; %scriptvar se

linux安装卸载jdk - 2015-11-01 17:11:08

卸载:一、查看Jdk的安装路径: whereis javawhich java (java执行路径)echo $JAVA_HOME echo $PATH 备注:如果是windows中,可以使用: set java_home:查看JDK安装路径java -version:查看JDK版本 二、卸载旧版本的JDK: 1. 确定JDK的版本: rpm -qa | grep jdk rpm -qa | grep gcj 可能的结果是: jdk-1.7.0_80-fcs.x86_64libgcj-4.4.7-4.el

从零开始,学习android开发 - 2015-11-01 14:11:32

简单的说,一个Android的应用,比如一个Activity,主要包含4个文件,即3个xml,一个Java,三个xml分别是main.xml(主界面文件),strings.xml(值文件)和一个AndroidManifest.xml(功能清单文件)。一个Java文件就是我们的主程序文件。 现在要编写的第一个android项目,是获取手机信息的一个Activity。 下面是4个文件的内容: main.xml ?xml version="1.0" encoding="utf-8"? linearLayout 
本文实例讲述了JSP针对表单重复提交的处理方法。分享给大家供大家参考,具体如下: 1. 在生成表单时执行如下: 复制代码 代码如下: session.setAttribute("forum_add", "forum_add"); 2. 提交处理时作如下判断 if (isRedo(request, "forum_add")) { //提示重复提交,作相关处理} 相关函数: /*** 判断是否为重复提交* 1,检查Session中是否含有指定名字的属性* 2,如果Session中没有该属性或者属性为空,证明已
今天同学问我一个问题,计算出来双色球33选6个红球排列组合所有的组合,要求最小化算法时间。 1,23,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33 排列组合后总共有1107568中情况(1107568 = 33!/(33-6)!*6!) 下面java代码为计算所有情况算法,去掉IO后,耗时15ms。   其中算法核心为:最小组合(1,2,3,4,5,6) , 最大组合(28,29,30