8

我从存储库中获取了项目,并按照设置说明尝试在 Eclipse 中创建一个项目,并将该位置指向我从存储库下载代码的位置。然后当我点击完成时,我得到了错误说明

“一个或多个约束未得到满足。无法安装项目构面 Java 1.6。已安装此项目构面的某些版本。无法安装项目构面动态 Web 模块 3.0。已安装此项目构面的某些版本。”

这个怎么解决?

4

4 回答 4

14

我解决了这个。解决方案是我必须转到项目位置的“.settings”文件夹并删除“org.eclipse.wst.common.project.facet.core.xml”文件并再次重新启动该过程。这次奏效了。谢谢你的帮助。

于 2012-05-03T13:26:46.890 回答
1

无需删除文件并重新创建。而是在 Eclipse 上的项目中导航 org.eclipse.wst.common.project.facet.core.xml 文件,并使用所需的任何版本更改其安装的 facet 标记。

于 2013-02-20T14:21:26.970 回答
1

我有同样的挑战,但使用从 Oracle 下载的 GlassFish5 并手动将我org.eclipse.wst.common.project.facet.core.xml的 from.settings文件夹配置为:

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <runtime name="GlassFish 5"/>
  <fixed facet="jst.web"/>
  <fixed facet="java"/>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="jst.web" version="4.0"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
  <installed facet="java" version="1.8"/>
  <installed facet="glassfish.web" version="5"/>
</faceted-project>

并包含使用 TomEE 从 Dynamic Web Project 生成的以下文件,现在我.settings的文件夹包含以下文件:

.jsdtscope
org.eclipse.jdt.core.prefs
org.eclipse.wst.common.component
org.eclipse.wst.common.project.facet.core.xml
org.eclipse.wst.jsdt.ui.superType.container
org.eclipse.wst.jsdt.ui.superType.name

然后,我编辑我的项目.classpath以指向我正在使用的 JAR 文件的位置,因为我使用的是 GlassFish5,这是我的配置:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.8.0_261">
        <attributes>
            <attribute name="owner.project.facets" value="java"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
    <classpathentry kind="lib" path="C:/glassfish5/glassfish/lib/javaee.jar"/>
    <classpathentry kind="output" path="build/classes"/>
</classpath>

最后,当我回到 Eclipse IDE 时,我刷新了我的 Project Explorer 和 walah!

我希望它对其他面临同样挑战的人有所帮助。

于 2020-10-24T06:05:15.440 回答
0

我也面临同样的问题,尝试创建多次动态 Web 项目并得到解决。

以下是我在工作org.eclipse.wst.common.project.facet.core.xml文件中观察到的内容。

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <runtime name="Apache Tomcat v8.5"/>
  <fixed facet="java"/>
  <fixed facet="wst.jsdt.web"/>
  <fixed facet="jst.web"/>
  <installed facet="java" version="1.8"/>
  <installed facet="jst.web" version="3.1"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>

我使用的技术堆栈:
Java 8 Tomcat 8.5 Eclipse Neon
任务:创建一个Dynamic Web Project

于 2020-08-05T08:46:59.680 回答