使用Ant的xjc2任务绑定一些有效的XML文档时,我收到以下失败消息:
[xjc2] [ERROR] null
[xjc2] unknown location
Run Code Online (Sandbox Code Playgroud)
这些文档与已成功绑定的其他文件非常相似,所有导入的模式都存在.生成以详细模式运行xjc:
Parent is not Defined Class...I cannot get the fields from this class
Run Code Online (Sandbox Code Playgroud)
任何人都知道这意味着什么?
我正在Windows XP上的Eclipse中开发基于Swing的Java应用程序.我有双显示器设置.
我希望程序在与我运行Eclipse的监视器不同的监视器上启动.如何设置我的调试配置以实现此目的?
在 Gradle 示例(包含在版本 2.2.1 中)中有一个 java/multiproject 项目。
该settings.gradle文件定义了以下项目:
包括“共享”、“api”、“服务:webservice”、“服务:共享”
请注意,它本身并不是services一个项目,而只是一个包含和项目的目录。webserviceshared
当我从根目录运行命令时gradle build,我注意到 gradle 成功构建后,它会在目录中创建/services一个/build包含/lib和/tmp目录的目录。
里面/services/build/lib是一个罐子:services-1.0.jar里面装的东西很少;具体来说只是一个META-INF/MANIFEST.MF包含以下内容的文件:
Manifest-Version: 1.0
provider: gradle
Run Code Online (Sandbox Code Playgroud)
那么是什么导致 Gradle 为这个非项目构建 jar 呢?如何在结构类似的多项目项目中防止这种行为?
/services不是一个项目,我根本不想在/build文件夹内创建任何内容。是的,我可以删除它,但我想避免首先构建这个 jar/在这个非项目上运行任何任务的不必要的工作。
我最近注意到VB6中的CallByName关键字.
由于这需要一个对象,过程名称,"调用类型"和参数数组,这可以用来"伪造"某些类型的多态行为吗?
我可以创建2个类,A类和B类,每个类都使用相同的方法Foo,并执行:
Dim list As New Collection
Dim instanceA As New ClassA
Dim instanceB As New ClassB
Dim current As Object
Call list.Add(instanceA)
Call list.Add(instanceB)
For Each current in list
Call CallByName(current, "methodName", vbMethod)
Next
Run Code Online (Sandbox Code Playgroud)
有人这样做过吗?问题?可怕的想法或天才的想法?启示?意想不到的后果?
我使用Aqua Data Studio通过散布输出结果来调试存储过程.
我在包中有一个违反完整性约束的delete语句:
DELETE FROM x WHERE x.ID = an_x_with_children;
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,我的proc在这一行上失败了ORA-02292.我想看看an_x_with_children变量的值.所以我用这样的输出包装行:
dbms_output.put('Attempting to delete x: ' || an_x_with_children);
DELETE FROM x WHERE x.ID = an_x_with_children;
dbms_output.put(' Success');
Run Code Online (Sandbox Code Playgroud)
并且期望在完整性约束违反错误消息之前将消息视为消息控制台中的最后一件事. 但它不打印!
现在,如果我更改输出以使用如下put_line()过程:
dbms_output.put_line('Attempting to delete x: ' || an_x_with_children);
DELETE FROM x WHERE x.ID = an_x_with_children;
dbms_output.put_line(' Success');
Run Code Online (Sandbox Code Playgroud)
在proc错误出现之前,我立即看到"试图删除x:123"的消息.
该文档的dbms_output包不提put和put_line程序行为有什么不同在这方面.例如,它说
使用PUT或PUT_LINE创建的输出被缓冲.
因此,当proc错误时,我会期望两者都显示或不显示输出.
有人可以向我解释这种行为发生了什么吗?
假设我的包中有2个相同类型的表变量.请注意,这些类型是包的本地类型.
TYPE MyTableType is table of some_table%ROWTYPE;
table1 MyTableType;
table2 MyTableType;
Run Code Online (Sandbox Code Playgroud)
我在程序包中有一个过程,它将一些数据加载到table1和table2中.在这之后的某个时刻,我想将table1中当前的所有内容添加到table2中.
有没有比循环table1和.extend-ing table2 更好的方法,然后.last在每次迭代时设置元素的值?
我正在寻找某种快速的批量操作,如果它存在的话.可以?
我有一个MyClass类:
public class MyClass {
private MyComplexType member1;
}
Run Code Online (Sandbox Code Playgroud)
我必须做一些非常激烈的初始化member1.足够它很容易保证自己的方法,从MyClass构造函数调用.
我的问题是,以下哪种格式最适合这种方法?
private MyComplexType initMyComplexType() {
MyComplexType result = new MyComplexType();
// extensive initialization on result...
return result;
}
Run Code Online (Sandbox Code Playgroud)
像这样叫:
public MyClass() {
member1 = initMember1();
}
Run Code Online (Sandbox Code Playgroud)
要么
private void initMember1() {
member1 = new MyComplexType();
// extensive initialization on member1...
}
Run Code Online (Sandbox Code Playgroud)
像这样叫:
public MyClass() {
initMember1();
}
Run Code Online (Sandbox Code Playgroud)
私人会员哪种风格更好?为什么?
是否有任何理由使用Integer.valueOf(X)初始化最终的Integer,如下所示:
public class MyClass
{
public static final Integer DAY_1 = Integer.valueOf(1); // Why do it this way?
public static final Integer DAY_2 = 2; // When it can be done this way?
}
Run Code Online (Sandbox Code Playgroud)
我知道在添加自动装箱之前,在旧版Java中这是必要的.这种代码有什么原因吗?还是只是一个坏习惯?
我正在查看Jersey用户指南,并尝试使用Jersey Web服务和嵌入式Grizzly服务器设置Hello World示例.
我正在完成第1节"入门".我已经在1.1节编译中得到了代码示例:
// The Java class will be hosted at the URI path "/helloworld"
@Path("/helloworld")
public class HelloWorldResource {
// The Java method will process HTTP GET requests
@GET
// The Java method will produce content identified by the MIME Media
// type "text/plain"
@Produces("text/plain")
public String getClichedMessage() {
// Return some cliched textual content
return "Hello World";
}
}
Run Code Online (Sandbox Code Playgroud)
但接下来我将进入第1.2节"部署根资源",这是我应该设置嵌入式Grizzly Web服务器以测试我的资源:
public class Main {
public static void main(String[] args) throws IOException {
final String …Run Code Online (Sandbox Code Playgroud) 在Eclipse 3.5中,假设我有这样的包结构:
tom.package1
tom.package1.packageA
tom.package1.packageB
Run Code Online (Sandbox Code Playgroud)
如果我右键单击tom.package1包并转到Refactor-> Rename,则会出现一个选项"Rename subpackages"作为复选框.如果我选择它,然后重命名tom.package1为tom.red我的包结构,最终会像这样:
tom.red
tom.red.packageA
tom.red.packageB
Run Code Online (Sandbox Code Playgroud)
但我听说Java的包不是分层的.Java教程将其备份(请参阅有关包的表观层次结构的部分).在这种情况下,Eclipse肯定会将包视为分层.
我很好奇为什么访问说明符不能允许/限制在前一个问题中访问"子包",因为我知道我之前曾在某处看过"子包".
Eclipse的重构工具是否通过推进"子包装"神话故意误导易受影响的年轻人?或者我在这里误解了什么?
java ×6
eclipse ×2
oop ×2
oracle ×2
plsql ×2
ant ×1
autoboxing ×1
dbms-output ×1
gradle ×1
grizzly ×1
jaxb ×1
jersey ×1
oracle10g ×1
polymorphism ×1
vb6 ×1
web-services ×1
xjc ×1