【问题标题】:Why can't I call a function from my custom library?为什么我不能从我的自定义库中调用函数?
【发布时间】:2014-08-08 02:08:42
【问题描述】:

我在 java 中创建了一个库,以便更轻松快捷地从谷歌地图调用地图,但我似乎无法正确导入 jar 文件。我按照我在此页面上找到的答案 How to create my own java library(API)? 但似乎我仍然做错了什么。

我在库 com.googleMaps 中命名了包,然后导出了 .jar 文件,然后将该 .jar 文件添加到另一个项目的构建路径中。然后我做了一个类,导入了com.googleMaps.StaticMap;,这给了我一个未使用的库警告。最后,在我的主要方法中,我调用了DisplayMaps("string");,这是StaticMap; 中的一个方法,但它给了我一个错误,说该方法不存在,但导入时未使用的警告消失了。

错误是:未为类型 MapTest1 定义方法 DisplayMap(String)

代码:

import com.googleMap.StaticMap;

public class MapTest1
{
    public static void main(String[] args)
    {
        DisplayMap("A Url Goes here"); // This is where im getting the error
    }
}

【问题讨论】:

  • 我们需要查看代码和错误信息

标签: java


【解决方案1】:

您应该使用StaticMap.DisplayMap("A Url Goes here"); 调用它。假设它是一个静态方法。

当调用一个静态方法时,你必须指定它所属的类,除非你是从同一个类的另一个方法调用它。

如果不是静态方法,则必须在调用该方法之前创建StaticMap的实例:

StaticMap map = new StaticMap(); 
map.DisplayMap("A Url Goes here");

【讨论】:

  • 我没有意识到它们必须是静态的。生病编辑我的代码,看看是否有效。
  • @Ardel 该方法不必是静态的。但如果它不是静态的,则必须在调用该方法之前创建一个 StaticMap 实例 - StaticMap map = new StaticMap(); map.DisplayMap(...);
  • 啊,好吧,我知道这对我来说会好得多
猜你喜欢
  • 2016-12-12
  • 2020-05-25
  • 1970-01-01
  • 1970-01-01
  • 2010-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-12
相关资源
最近更新 更多