我是Ionic和android的新手。
在尝试构建我的Ionic Android应用程序时,我收到一条错误消息。
:compileDebugJavaC:\Temp\Projekt\test\platforms\android\src\org\apache\cordova\filetransfer\FileTransfer.java:692: error: cannot find symbol
if (!isLocalTransfer && !Config.isUrlWhiteListed(source)) {
^
symbol: method isUrlWhiteListed(String)
location: class Config
Note: Some input files use or override a deprecated API.
FAILED
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileDebugJava'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 3.974 secs
C:\Temp\Projekt\test\platforms\android\cordova\node_modules\q\q.js:126
throw e;
^
Error code 1 for command: cmd with args: /s /c ""C:\Temp\Projekt\test\platforms\\android\gradlew" cdvBuildDebug -b "C:\Temp\Projekt\test\platforms\android\build.gradle" -Dorg.gradle.daemon=true"
ERROR building one of the platforms: Error: cmd: Command failed with exit code 1
You may not have the required environment or OS to build this project
Error: cmd: Command failed with exit code 1
有没有人知道如何解决这个问题? 提前谢谢!
答案 0 :(得分:0)
您在编译时获得@Entity
@Table(name = "produtos")
public class Product {
@Id
@GeneratedValue
@Column(name = "id")
private int id;
@Embedded
private BarCode barCode;
@ManyToOne
private Manufacturer manufacturer;
private String description;
//How to map?
private Keywords keywords;
}
public class Keywords {
private List<String> wordList = new ArrayList<>();
public void add(String keyword) {
wordList.add(keyword);
}
public boolean contains(String keyword) {
return wordList.contains(keyword);
}
public static Keywords ofPhrase(String phrase) {
Keywords keywords = new Keywords();
StringTokenizer tokenizer = new StringTokenizer(phrase, " ", false);
while (tokenizer.hasMoreTokens()) {
String t = tokenizer.nextToken();
if (t.length() > 4 && !keywords.contains(t)) {
keywords.add(t);
}
}
return keywords;
}
public List<String> getWordList() {
return wordList;
}
}
。这个错误消息被广泛讨论on this question。
通常这意味着您拼错了一些方法名称,或者它根本不存在。
在您的具体情况下,问题出在这个方法上:error: cannot find symbol
。
检查拼写是否正确,案例是否正确(例如网址或网址),以及您尝试调用的方法是否确实存在,因为如果您正在关注教程可能已在某些版本中删除。
编辑:正如@kuzyn在评论中所说,您还必须检查您的机器上是否已正确安装了所有内容(离子,科尔多瓦等)。
您也可以尝试他提供的命令:Config.isUrlWhiteListed()
。
仔细检查Ionic page,看看你是否真的安装了所有内容。
答案 1 :(得分:0)
我创建了一个具有相同名称的新Ionic应用,然后更改了小部件ID中添加的数字以匹配旧应用中的数字。
如果您在PC上执行此操作并想要创建IOS应用程序,则必须将整个应用程序移动到MAC并在发布之前使用cordova构建它。另外,应用程序将拥有旧窗口小部件ID的路径,您将无法使用(例如)在应用程序中下载的文件。