首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用本地更改重写Maven依赖项时的冲突

用本地更改重写Maven依赖项时的冲突
EN

Stack Overflow用户
提问于 2017-03-27 15:03:57
回答 1查看 184关注 0票数 1

我从Maven下载了一个库,但是需要覆盖其中一个文件中的一个字符串,所以我进入了IntelliJ中的Maven项目选项卡,并从它的pom.xml文件C:\Users\mnxe\Documents\parse4j-master\pom.xml中手动添加了该项目。现在我可以从我的项目文件夹结构中访问.java文件:

通过将API_ENDPOINT替换为我需要的URL (FYI,https://api.parse.com不再存在),我做了这个更改:

代码语言:javascript
复制
package org.parse4j;

public class ParseConstants {

    public static final String API_ENDPOINT = "https://parseapi.back4app.com";
    public static final String API_VERSION = "1";

    public static final String HEADER_CONTENT_TYPE = "Content-Type";
    public static final String HEADER_APPLICATION_ID = "X-Parse-Application-Id";
    public static final String HEADER_REST_API_KEY = "X-Parse-REST-API-Key";
    public static final String HEADER_MASTER_KEY = "X-Parse-Master-Key";
    public static final String HEADER_SESSION_TOKEN = "X-Parse-Session-Token";

    public static final String CONTENT_TYPE_JSON = "application/json";

    public static final String FIELD_OBJECT_ID = "objectId";
    public static final String FIELD_CREATED_AT = "createdAt";
    public static final String FIELD_UPDATED_AT = "updatedAt";
    public static final String FIELD_SESSION_TOKEN = "sessionToken";


    public static int MAX_PARSE_FILE_SIZE = 10485760;

}

我的项目现在应该可以工作了,但我得到了一个例外:

代码语言:javascript
复制
3306 [main] ERROR org.parse4j.ParseObject - Request failed.
Exception in thread "main" org.json.JSONException: A JSONObject text must begin with '{' at 1 [character 2 line 1]
    at org.json.JSONTokener.syntaxError(JSONTokener.java:433)
    at org.json.JSONObject.<init>(JSONObject.java:194)
    at org.json.JSONObject.<init>(JSONObject.java:321)
    at org.parse4j.command.ParseResponse.getJsonObject(ParseResponse.java:83)
    at org.parse4j.command.ParseResponse.getException(ParseResponse.java:71)
    at org.parse4j.ParseObject.save(ParseObject.java:492)
    at tmt.main(tmt.java:21)
    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:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)

我有一种感觉,它仍然在我的主pom.xml中调用旧的依赖关系:

代码语言:javascript
复制
       <dependency>
            <groupId>com.github.thiagolocatelli</groupId>
            <artifactId>parse4j</artifactId>
            <version>1.4</version>
        </dependency>

我应该消除这种依赖吗?如果是,那么将新的本地修改类导入到我的应用程序中的语法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-27 15:18:38

以下是我建议的工作流程:

  1. 转到您更改一行的项目。
  2. 将pom.xml中的版本更改为“1.4Fired”。
  3. 用“干净安装”打电话给Maven (关于“被盗”项目)。现在,如果没有错误,版本1.4的jar应该在(.m2/存储库)中。
  4. 参考旧项目中的版本“1.4-固定”(而不是1.4),并构建该项目。

当然,版本1.4现在只存在于您自己的机器上(除非您将其部署到某个公司Nexus/Artifactory)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43049967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档