このエラーを初めて見たのは初めてで、修正方法はわかりません。エラーがタスクの作成またはタイプtranslate-classpath
run:
C:\Users\matt\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:48: Problem: failed to create task or type translate-classpath
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
BUILD FAILED (total time: 0 seconds)
そして、私のコードであることが
<?xml version="1.0" encoding="UTF-8"?>
<project name="{0} (run)" default="run" basedir=".">
<target name="run">
<translate-classpath classpath="${classpath}" targetProperty="classpath-translated" />
<property name="run.jvmargs" value="" />
<property name="work.dir" value="${basedir}"/>
<property name="application.args" value="" />
<property name="java.failonerror" value="true"/>
<java classpath="${classpath-translated}" classname="${classname}" dir="${work.dir}" jvm="${platform.java}" fork="true" failonerror="${java.failonerror}">
<jvmarg value="-Dfile.encoding=${encoding}"/>
<redirector inputencoding="${encoding}" outputencoding="${encoding}" errorencoding="${encoding}"/>
<jvmarg line="${run.jvmargs}" />
<arg line="${application.args}" />
<syspropertyset>
<propertyref prefix="run-sys-prop."/>
<mapper from="run-sys-prop.*" to="*" type="glob"/>
</syspropertyset>
</java>
</target>
</project>
そしてライン48で、
package xj3dtest;
import java.awt.BorderLayout;
import java.awt.Container;
import static java.lang.Boolean.TRUE;
import javax.swing.JFrame;
import org.web3d.x3d.sai.*;
import java.util.HashMap;
public class Xj3DTest extends JFrame {
public Xj3DTest(String title) {
super(title);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Setup browser parameters
HashMap requestedParameters=new HashMap();
requestedParameters.put("Antialiased",TRUE);
requestedParameters.put("TextureQuality","medium");
requestedParameters.put("PrimitiveQuality","medium");
requestedParameters.put("Xj3D_InterfaceType","SWING");
requestedParameters.put("Xj3D_NavbarShown",TRUE);
requestedParameters.put("Xj3D_NavbarPosition","TOP");
requestedParameters.put("Xj3D_LocationShown",TRUE);
requestedParameters.put("Xj3D_LocationPosition","TOP");
requestedParameters.put("Xj3D_LocationReadOnly",TRUE);
requestedParameters.put("Xj3D_ShowConsole",TRUE);
requestedParameters.put("Xj3D_OpenButtonShown",TRUE);
requestedParameters.put("Xj3D_ReloadButtonShown",TRUE);
requestedParameters.put("Xj3D_StatusBarShown",TRUE);
requestedParameters.put("Xj3D_FPSShown",TRUE);
requestedParameters.put("Xj3D_ContentDirectory","CurrentDirectory");
requestedParameters.put("Xj3D_AntialiasingQuality","low");
requestedParameters.put("Xj3D_Culling_Mode", "frustum");
System.setProperty("x3d.sai.factory.class", "org.xj3d.ui.awt.browser.ogl.X3DOGLBrowserFactoryImpl");
BrowserFactory.setBrowserFactoryImpl(
new org.web3d.ogl.browser.X3DOGLBrowserFactoryImpl()
);
X3DComponent x3dComponent = BrowserFactory.createX3DComponent(requestedParameters);
Browser browser = x3dComponent.getBrowser();
Container cp = getContentPane();
cp.setLayout(new BorderLayout());
cp.add((javax.swing.JPanel)x3dComponent, BorderLayout.CENTER);
X3DScene scene = browser.createX3DFromURL(new String[] {"test.x3d"});
browser.replaceWorld(scene);
}
public static void main(String[] args) {
Xj3DTest frame = new Xj3DTest("Xj3D test");
frame.setSize(640, 480);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
そしてrun.xml
ファイルであるが<translate-classpath classpath="${classpath}" targetProperty="classpath-translated" />
で、私が持っているJars
は
gluegen-rt
gluegen-rt-natives-linux-amd64
gluegen-rt-natives-windows-amd64
gluegen-rt-natives-windows-i586
j3d-core-1.3.1
jhall
joal
joal-natives-linux-amd64
joal-natives-windows-amd64
joal-natives-windows-i586
jogl-all
jogl-all-natives-linux-amd64
jogl-all-natives-windows-amd64
jogl-all-natives-windows-i586
xj3d.browser_2.1.0-nps
xj3d.cadfilter_2.1.0-nps
xj3d-2.1-3rdparty-nps
xj3d-2.1-nps
xj3d-core
xj3d-runtime
xj3d-script-base
プロジェクトのプロパティのVMオプションで-Xmx450M -Djava.library.path="C:\Users\matt\Documents\NetBeansProjects\jar"
行を使用してライブラリをライブラリオプションに追加しました。すべてJars
を含むライブラリにプロジェクトをリンクしました。
私は本当にどのように問題を解決するのか分かりません。
編集
それはまだ固定していません。
私はAntを使っていませんが、おそらくこれらは助けになるかもしれません:http://stackoverflow.com/questions/12407637/apache-ant-does-not-recognize-for-task-macro-although-i-have -added-ant-contriとhttp://stackoverflow.com/questions/7969474/ant-failed-to-create-task-or-type – Madhusudhan
@ user3493289ありがとうございました。しかし、これらの2つの答えは、私のrun.xmlにない 'taskdef'を変更すると言いました。そして、2人は問題がbuild.xmlにあります。 – smitthy