我首先使用CXF教程遵循此 合同,虽然pom.xml生成的源生成源甚至成功完成构建,但它无法创建WAR文件.
相反,它会创建一个JAR文件.
我的理解是pom.xml中负责创建WAR的部分是:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<outputDirectory>D:/path/to/profile/autodeploy</outputDirectory>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
我没有看到任何<goal>或<execution>元素(与build-helper-maven-plugin一个不同),但我也明白,使用这个插件这暗示,甚至官方使用页面演示:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<webappDirectory>/sample/servlet/container/deploy/directory</webappDirectory>
</configuration>
</plugin>
</plugins>
</build>
...
</project>
Run Code Online (Sandbox Code Playgroud)
那么......我错过了什么?
什么可以解释一个maven-war-plugin像这样的意外行为,并默认生成一个JAR而不是一个WAR?
有没有办法强制它产生WAR?
在我的应用程序中,我在实例化TextToSpeech(根据LogCat约800ms )之后很好地调用TextToSpeech.getLanguage(),但它有时(并非总是)返回null,尽管在系统的TextToSpeech设置中正确设置了语言:
System Settings > Language & input >
Text-to-speech output > Google Text-to-speech > English (United Kingdom)
Run Code Online (Sandbox Code Playgroud)
这只发生在Jelly Bean(Android 4.1.1)中.在Android 2.2中不会发生这种情况.
这是一个已知的Android错误吗?或者我做错了什么?
我在我的应用程序的主要活动中实例化BTW,TextToSpeech:
new TextToSpeech(this, this);
Run Code Online (Sandbox Code Playgroud)
实例化和对TextToSpeech.getLanguage()的调用 都在同一个线程中进行(因此保证了调用顺序).
我创建了一个通用的OkCancelDialog类,可以通过静态方法在我的应用程序中方便地调用它:
static public void Prompt(String title, String message) {
OkCancelDialog okcancelDialog = new OkCancelDialog();
okcancelDialog.showAlert(title, message);
}
Run Code Online (Sandbox Code Playgroud)
由于各种原因,我需要活动中的onClick监听器,所以在我的活动中:
public void onClick(DialogInterface v, int buttonId) {
if (buttonId == DialogInterface.BUTTON_POSITIVE) { // OK button
// do the OK thing
}
else if (buttonId == DialogInterface.BUTTON_NEGATIVE) { // CANCEL button
// do the Cancel thing
}
else {
// should never happen
}
}
Run Code Online (Sandbox Code Playgroud)
这适用于应用程序中的单个对话框,但现在我想添加另一个确定/取消对话框,由同一活动处理.据我所知,只有一个onClick()可以为活动定义,所以我不知道如何实现这个.
有什么建议或提示吗?
我正在尝试设置一个非常简单的布局背景:
LinearLayout ll = (LinearLayout) findViewById(R.id.simple_layout);
Run Code Online (Sandbox Code Playgroud)
这有效:
ll.setBackgroundColor(Color.WHITE);
Run Code Online (Sandbox Code Playgroud)
但这不是:
ll.setBackgroundColor(R.color.white);
Run Code Online (Sandbox Code Playgroud)
是的,我验证了它R.color.white是在colors.xml文件下定义的/res/values.
我错过了什么?
我有 2 个布局。
程序启动时,第一个加载(WebView)很好。
当用户选择菜单项时,第二个也会加载(一个简单的布局):
setContentView(R.layout.simple);
LinearLayout ll = (LinearLayout) findViewById(R.id.simple_layout);
Run Code Online (Sandbox Code Playgroud)
它所做的只是在后台处理某些内容的同时显示图像。处理完成后,它会尝试(通过 Handler)切换回它刚刚遮住的 WebView。
setContentView(R.layout.main);
Run Code Online (Sandbox Code Playgroud)
切换似乎发生了,但 webview 是空白的。
这是为什么?setContentView()切换回第一个布局还不够,就像切换到第二个布局正常一样?