如何在Eclipse中构建Java的Github API?

时间:2015-10-26 23:28:48

标签: java eclipse maven github github-api

我正在尝试在Eclipse中为Java构建Github API。 我从链接https://github.com/eclipse/egit-github/tree/master/org.eclipse.egit.github.core下载项目,并按照自述文件的说明使用pom / xml文件进行构建。 然后我执行maven的命令,因为它描述但发生了错误。

自述文件中的Maven命令是:

建筑

GitHub Java API是使用Apache Maven构建的。

运行以下命令以构建包含不依赖的GitHub Java API的JAR文件:

$ mvn -f pom-jar.xml clean install

所有功能于一身的

GitHub Java API也可以构建为包含所有依赖项的JAR(Google Gson)。此技术使用Maven Shade插件构建一体化JAR文件。

$ mvn -f pom-jar.xml clean install -P shade

当我执行maven命令$ mvn package或读取我文件中描述的命令时会发生这种情况。

C:\Users\panagiotis\Desktop\egit-github-master>mvn package
[INFO] Scanning for projects...
[INFO] Computing target platform for MavenProject: org.eclipse.mylyn.github:org.eclipse.egit.github.core:4.2.0-SNAPSHOT @ C:\Users\panagiotis\Desktop\egit-github-master\org.eclipse.egit.github.core\pom.xml
[INFO] Adding repository file:/C:/Users/panagiotis/Desktop/egit-github-master/org.eclipse.egit.github.core/../../egit/org.eclipse.egit.repository/target/repository
[ERROR] Internal error: java.lang.RuntimeException: Failed to load p2 repository with ID 'egit' from location file:/C:/Users/panagiotis/Desktop/egit-github-master/org.eclipse.egit.github.core/../../egit/org.eclipse.egit.repository/target/repository: No repository found at file:/C:/Users/panagiotis/Desktop/egit-github-master/org.eclipse.egit.github.core/../../egit/org.eclipse.egit.repository/target/repository. -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.RuntimeException: Failed to load p2 repository with ID 'egit' from location file:/C:/Users/panagiotis/Desktop/egit-github-master/org.eclipse.egit.github.core/../../egit/org.eclipse.egit.repository/target/repository
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:121)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:862)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:197)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: java.lang.RuntimeException: Failed to load p2 repository with ID 'egit' from location file:/C:/Users/panagiotis/Desktop/egit-github-master/org.eclipse.egit.github.core/../../egit/org.eclipse.egit.repository/target/repository
        at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.loadMetadataRepository(TargetPlatformFactoryImpl.java:301)
        at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.gatherExternalInstallableUnits(TargetPlatformFactoryImpl.java:269)
        at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.createTargetPlatform(TargetPlatformFactoryImpl.java:174)
        at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.createTargetPlatform(TargetPlatformFactoryImpl.java:126)
        at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.createTargetPlatform(TargetPlatformFactoryImpl.java:1)
        at org.eclipse.tycho.p2.manager.ReactorRepositoryManagerImpl.computePreliminaryTargetPlatform(ReactorRepositoryManagerImpl.java:82)
        at org.eclipse.tycho.p2.resolver.P2DependencyResolver.computePreliminaryTargetPlatform(P2DependencyResolver.java:221)
        at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject(DefaultTychoResolver.java:109)
        at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:77)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:266)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        ... 11 more
Caused by: org.eclipse.equinox.p2.core.ProvisionException: No repository found at file:/C:/Users/panagiotis/Desktop/egit-github-master/org.eclipse.egit.github.core/../../egit/org.eclipse.egit.repository/target/repository.
        at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:395)
        at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:692)
        at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
        at org.eclipse.tycho.p2.remote.RemoteMetadataRepositoryManager.loadRepository(RemoteMetadataRepositoryManager.java:59)
        at org.eclipse.tycho.p2.remote.RemoteMetadataRepositoryManager.loadRepository(RemoteMetadataRepositoryManager.java:52)
        at org.eclipse.tycho.p2.target.TargetPlatformFactoryImpl.loadMetadataRepository(TargetPlatformFactoryImpl.java:297)
        ... 22 more
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/InternalErrorException

我第一次使用Maven所以我无法找到问题所在。 也许我必须在其他特定目录中移动egit-github-master文件夹,或者我使用错误的命令来构建?

1 个答案:

答案 0 :(得分:0)

你需要克隆these 3 repositories并基本上导入所有包含的eclipse项目:

  • jgit
  • 例如:It
  • 例如:It-github上

您构建无法解析目标平台项目,该项目是egit存储库的一部分。在构建成功之前,您应该阅读完整的egit contributor guide,因为需要更多IDE设置。