我有一个庞大的项目源代码,我主要在PHP和JavaScript上工作.我必须将完整的项目区域作为Eclipse中的项目根目录,但不幸的是,这包括几个驱动WST/DLTK /等内置验证的目录.坚果.
我已经尝试禁用项目属性中的所有验证器.我一次一个地进入验证器,并将规则添加到"排除组"设置以排除特定文件夹.我已从项目属性中的PHP构建路径中删除了这些文件夹.然而,我的问题视图/标签仍然散布着成千上万的红色标记,这些标志主要来自我们用来保存外部元素(Apache,PHP等)副本的文件夹.你知道,典型的"有我们目前使用的特定版本的副本".
信噪比太差了,我根本无法使用视图,这是一种耻辱.如果我不会有IDE的好处,我可能也会使用vim(我将它用于其他东西,但对于这个代码库,一个好的IDE是一个更好的选择,提供我可以让它工作).在我看来,能够右键单击项目中的文件夹并选择"从验证中排除"将是一个显而易见的功能,但唉,没有这样的功能.是否有另一种方法可以让验证器(PHP,HTML等)忽略我需要忽略的文件夹?
如果我将一个Java 8 Lambda表达式放在REST服务中,它就会崩溃.如果我删除lambda表达式,它的工作原理.如果我使用lambda表达式并不重要.只是存在lambda足以崩溃.Java 8相关的所有其他内容似乎都有效.
以下是我的代码(简化):
@Path("finance")
public class FinanceRest {
@GET
@Produces("text/plain")
public String speak() {
return "Hello world.";
}
private void lambdaFunction(Predicate<Account> predicate) {
// Any lambda will cause problems, no matter how simple
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9);
Stream<Integer> onlyOdds = numbers.stream().filter(n -> n%2 != 0);
}
}
Run Code Online (Sandbox Code Playgroud)
从上面的代码中可以看出,只有lambda表达式的存在才会导致失败.一旦我删除lambda,它工作正常.其他Java 8的东西很好(例如,"Predicate"输入参数).
我得到的错误消息是: java.lang.ArrayIndexOutOfBoundsException:25980
我已经在使用Java 8的Tomcat 7和8上尝试了这个.我正在使用来自JavaEE 6的标准jax-rs ...换句话说我的POM文件有:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.谢谢.
确切的错误消息(在Glassfish 4.0上......我尝试过Tomcat和Glassfish)是:
java.lang.ArrayIndexOutOfBoundsException:52264 at org.objectweb.asm.ClassReader.readClass(ClassReader.java:2015)atg.objectweb.asm.ClassReader.accept(ClassReader.java:469)at org.objectweb.asm.ClassReader.接受(ClassReader.java:425)org.glassfish.hk2.classmodel.reflect.Parser $ …
Glassfish v3在部署jar文件时给出了此异常"公开远程客户端视图.此功能不是EJB 3.1 Lite API的一部分".
我尝试使用Java EE 6 Web Profile SDK和Java EE 6 SDK,但没有区别.
我认为有一个简单的配置解决方案,但解决方案是什么?:)
谢谢
我有一个 GWT 项目,所以我的 javascript 代码是由 GWT 编译器生成的。在上次 chrome 更新后,Javascript 代码开始抛出异常,因为“无法在 'Node' 上执行 'insertBefore':需要 2 个参数,但只有 1 个存在。” 因为 javascript 代码有一些类似的行:
b.element.dom.insertBefore(e)
Run Code Online (Sandbox Code Playgroud)
如果我将上面的代码更改为:
b.element.dom.insertBefore(e, null)
Run Code Online (Sandbox Code Playgroud)
GWT 是否必须发布新更新才能解决此问题?或者是否可以编辑或覆盖 GWT 编译器来解决生成的错误代码?
谢谢大家。
在我爱上 react-native 和 iOS 上的 Realm 之前,我正在尝试更多地了解如何处理迁移。这句话让我很担心:
领域反应本机 0.10.0
如上所述,在打开 Realm 时,迁移目前仅限于更新 schema 和 schemaVersion。尚不支持数据迁移,但将来可能会添加。
我理解这意味着每次我对**任何架构**进行更改时都需要增加 schemaVersion 。
如何指定多个模式,每个模式都有自己的模式版本?
这不起作用:
export default new Realm(
{schema: [AppSetting], schemaVersion: 0},
{schema: [Gps], schemaVersion: 3},
{schema: [Waypoint], schemaVersion: 4},
{schema: [FlightPath], schemaVersion: 1},
);
Run Code Online (Sandbox Code Playgroud)
这假设我的更复杂的模式可能需要经常修改,直到我把事情做好。
只要我只添加新属性,迁移就会简单吗?
我假设我无法重命名或删除现有属性?
非常感谢有关领域迁移的建议,
我正在尝试一些休眠.以下是我正在使用的pojo,
@Entity
@Table(name = "person")
public class Person {
@Id
@GeneratedValue
@Column(name = "person_id")
private long person_id;
@Column(name = "name")
private String name;
@Column(name = "Address")
private String Address;
@OneToMany(fetch = FetchType.EAGER, mappedBy = "person" )
private Set<Phone> phone;
//Getters ande Setters
}
@Entity
@Table(name = "phone")
public class Phone{
@Id
@GeneratedValue
@Column(name = "phone_id")
private long phone_id;
@Column(name = "name")
private String name;
@ManyToOne(cascade = CascadeType.MERGE,fetch = FetchType.EAGER)
@JoinColumn(name = "person_id")
private Person person ;
//Getters ande Setters
} …
Run Code Online (Sandbox Code Playgroud) java ×3
eclipse ×1
ejb ×1
glassfish ×1
glassfish-3 ×1
glassfish-4 ×1
gwt ×1
gwt-compiler ×1
hibernate ×1
ios ×1
jackson ×1
java-8 ×1
javascript ×1
lambda ×1
react-native ×1
realm ×1
spring ×1