Eclipse新建java项目后,run as时没有选项,仅run configration

原因:jre环境配置问题

解决:

(1)项目右键,选择properties

(2)勾选jre环境

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
/** * 初始化SDK */ private static void initSDK(String appid, String appkey) { ProxySelector defaultProxySelector = ProxySelector.getDefault(); Proxy proxy = null; List<Proxy> proxyList = null; try { proxyList = defaultProxySelector.select(new URI( "http://www.google.it")); } catch (URISyntaxException e) { e.printStackTrace(); } if (proxyList != null && proxyList.size() > 0) { proxy = proxyList.get(0); Log.d(TAG, "Current Proxy Configuration: " + proxy.toString()); } AppInfo appInfo = new AppInfo(); appInfo.setAppId(appid);// 应用ID appInfo.setAppKey(appkey);// 应用Key appInfo.setCtx(ctx); /* * VersionCheckLevelNormal 版本检查失败可以继续进行游戏 VersionCheckLevelStrict * 版本检查失败则不能进入游戏 默认取值为VersionCheckLevelStrict */ appInfo.setVersionCheckStatus(AppInfo.VERSION_CHECK_LEVEL_STRICT); // 初始化SDK Commplatform.getInstance().Init(0, appInfo, new CallbackListener<Integer>() { @Override public void callback(final int paramInt, Integer paramT) { ctx.runOnUiThread(new Runnable() { @Override public void run() { Log.i(TAG, "Init paramInt = " + paramInt); // ok.setEnabled(true); LogUtil.send("初始化: " + paramInt); } }); } }); } /** * 用户登录 * */ public static void loginEx(Context context) { Bundle bundle = new Bundle(); bundle.putString("nounce", UUID.randomUUID().toString() .replace("-", "")); Commplatform.getInstance().LoginEx(context, bundle, new CallbackListener<Bundle>() { @Override public void callback(int resultCode, Bundle bundle) { if (resultCode == ErrorCode.COM_PLATFORM_SUCCESS) { // 完成参数验签 // 处理登录成功逻辑 // HomeActivity.show(ctx); // String uin= bundle.getString("uin"); LogUtil.send("登录成功 :"); // String uin= bundle.get("nounce").toString(); String uin = Commplatform.getInstance() .getLoginUin(); LogUtil.send("登录成功 uin :" + uin); UnityPlayer.UnitySendMessage("MainScript", "HuaweiLoginBack", uin); } else { // 处理登录失败逻辑 LogUtil.send("登录失败"); } } }); } /** * 充值 * */ public static int pay(String currency) { isPaying = true; Payment payment = new Payment(); ProductBean productBean = productMap.get(currency); makeSerial(); payment.setTradeNo(orderKen); payment.setProductId(productBean.getProductId()); payment.setSubject(productBean.getTitle()); payment.setDesc(productBean.getDescription()); payment.setAmount(productBean.getPrice_amount()); payment.setCurrency(productBean.getPrice_currency_code()); payment.setNote(""); payment.setNotifyURL(""); payment.setThirdAppId(id); payment.setThirdAppName("Spot Battle"); payment.setThirdAppPkgname("com.testcrecool.mi"); final String tradeNo = payment.getTradeNo(); final String productId = payment.getProductId(); // 将订单的详细信息插入数据库 PaymentTableAdapter.insert(ctx, payment); int res = Commplatform.getInstance().UniPayExt(payment, ctx, new CallbackListener<PayResult>() { @Override public void callback(final int code, final PayResult arg1) { ctx.runOnUiThread(new Runnable() { public void run() { // 回调结果,即支付过程结束 isPaying = false; LogUtil.send("回调结果,即支付过程结束 code: " + code); if (code == ErrorCode.COM_PLATFORM_SUCCESS) { // TODO Example 1 // 根据final 的 productID 或者 orderId // 去处理商品,比如查询道具,发放道具等 // TODO Example 2 // 可以根据订单号查询订单详细信息,在做订单的处理,比如查询道具,发放道具等 // 如下: Payment payment = PaymentTableAdapter .queryByOrderId(ctx, orderKen); // 购买有结果,即删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx, orderKen); Log.i(TAG, "COM_PLATFORM_SUCCESS"); LogUtil.send("成功"); UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", orderKen); } else if (code == ErrorCode.COM_PLATFORM_ERROR_PAY_FAILURE) { Log.i(TAG, "COM_PLATFORM_ERROR_PAY_FAILURE"); } else if (code == ErrorCode.COM_PLATFORM_ERROR_PAY_CANCEL) { // 购买失败 // 购买有结果,即删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx, tradeNo); Log.i(TAG, "COM_PLATFORM_ERROR_PAY_CANCEL"); UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", "error"); } else if (code == ErrorCode.COM_PLATFORM_ERROR_PAY_CANCEL) { LogUtil.send("取消购买"); // 取消购买 // 购买有结果,即删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx, tradeNo); UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", "error"); } else { LogUtil.send("Purchase failed. Error code:" + code); Log.i(TAG, "COM_PLATFORM_ERROR_UNKNOWN"); } } }); } }); if (res == 0) { LogUtil.send("000"); return 0; } else { // 返回错误,即支付过程结束 isPaying = false; LogUtil.send("返回错误,即支付过程结束"); return -1; } } /** * 获取应用内商品信息 **/ public static void querySkuDetail() { Commplatform.getInstance().getSkuDetails(ctx, new CallbackListener<List<SkuDetail>>() { @Override public void callback(int errorCode, List<SkuDetail> skuDetails) { if (errorCode == ErrorCode.COM_PLATFORM_SUCCESS && skuDetails != null) { for (SkuDetail detail : skuDetails) { ProductBean prBean = new ProductBean(); prBean.setProductId(detail.productId); prBean.setPrice(detail.price); prBean.setPrice_amount(detail.price_amount); prBean.setPrice_currency_code(detail.price_currency_code); prBean.setTitle(detail.title); prBean.setDescription(detail.description); productMap.put(detail.productId, prBean); } // showText.setText(buffer.toString()); LogUtil.send("获取应用内商品信息"); } else { // showText.setText("query error"); LogUtil.send("query error"); } } }); } /** * 生成订单号 * */ private static String makeSerial() { // 生成订单号 orderKen = UUID.randomUUID().toString().replaceAll("-", ""); return orderKen; } // 同步支付订单的漏单查询接口调用 private static void checkPay(final Payment paymentSerial) { QueryPayment queryPayment = new QueryPayment(); queryPayment.setTradeNo(paymentSerial.getTradeNo()); queryPayment.setThirdAppId(paymentSerial.getThirdAppId()); final String tradeNo= queryPayment.getTradeNo(); Commplatform.getInstance().queryPayment(queryPayment, ctx, new CallbackListener<PaymentState>() { @Override public void callback(int paramInt, PaymentState paramT) { if (paramInt == ErrorCode.COM_PLATFORM_SUCCESS) { // Step2:订单查询成功 从数据库删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx,tradeNo); // 订单支付成功,可以根据订单号查询订单详细信息,在做订单的处理,比如查询道具,发放道具等 // TODO… 游戏代码 LogUtil.send("漏单查询成功!!!"); UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", orderKen); } else if (paramInt == ErrorCode.COM_PLATFORM_ERROR_UNEXIST_ORDER) { // Step2:订单不存在 从数据库删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx, tradeNo); // 根据游戏自身的体验决定如何处理 UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", "error"); } else if (paramInt == ErrorCode.COM_PLATFORM_ERROR_PAY_FAILURE) { // Step2:订单支付失败 从数据库删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx, tradeNo); // 根据游戏自身的体验决定如何处理 UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", "error"); } else if (paramInt == ErrorCode.COM_PLATFORM_ERROR_SERVER_RETURN_ERROR) { // Step2:服务端返回错误 从数据库删除此订单号 PaymentTableAdapter.deleteByOrderId(ctx, tradeNo); // 根据游戏自身的体验决定如何处理 UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", "error"); } else if (paramInt == ErrorCode.COM_PLATFORM_ERROR_PAY_REQUEST_SUBMITTED) { // 订单已提交 // 根据游戏自身的体验决定如何处理 // 后续还需要继续查询 UnityPlayer.UnitySendMessage("MainScript", "hwPayCallback", "error"); } else { // 未知错误 // 根据游戏自身的体验决定如何处理 // 后续还需要继续查询 } } }); }
Hibernate Tools for eclipse 创建Hibernate Console Configuration向导有Main、Option、Classpath、Mappings、Common五个选项卡,如果你在工程中已经引入了JDBC驱动则,直接点击Finish完成即可,以后在完成其他配置。 完成后,你就可以在Hibernate Configuration视图窗口看到配置项,已经链接到数据,并把你数据库中的表列出来,如果在这一步你没有成功的话,请检查你是否以正确安装的Hibernate Tools和JBoos Tools这个很重要;另外如果提示找不到JDBC驱动的话,说明你工程的classpath中没有JDBC驱动jar包,加载正确的驱动即可。 如果你不能看到上图所示的Hibernate Configurations窗口,说明你没有打开这个View,选择Windows-Show View-Other,然后选择Hibernate Configurations即可打开这个窗口,窗口的位置无关紧要,你喜欢放在那就把他托过去。 下面将介绍如何使用Hibernate Code Generation来产生数据库表映射Java对象,首先要在数据库中创建表,并设置号字段名和主键(主键很重要,关于主键的选择建议你使用与业务无关的ID作为主键);打开Hibernate视图找到Hibernate运行图标下的Hibernate Code Generation Configurations,如果找不到这个图标说明没有在Hibernate视图下。 配置一个新的配置项,输入配置项的名称MyHibernateCode,选择Hibernate Configuration(即已配好的Hibernate控制台配置),在Output directory中输入反向代码输出目录(注意这个目录一般只需项目的源代码src),然后复选Reverse engineer from JDBC connection,在Package中输入包名(你要存放到src下那个包中),最后单击Setup-Create New打开Reverse engineer配置向导,选择配置存储位置(我放到了src目录下),最后选择要反向工程的表,如图; 如果你的Database schema中没有项目,查看你选择Console configuration是否正确,单击下面“Refresh”应该就出来了,最后单击Finish完成返回, 然后单击Exporters选项卡,选择导出项目,这选择了Domain code(.java) 和Hibernate XML Mappings(.hbm.xml),因为使用的JDK版本较高因此复选Use Java 5 syntax项。Refresh和Common项可不进行设置,最后单击Run运行,产生代码。 产生的代码和配置文件,如图示;代码自动产生后还需要你根据自己的业务逻辑检查一下,并按你的DAO架构完成,Hibernate Tools到这已经帮你完成的大量编码工作。 【编辑推荐
maven2的插件,用于在eclipse下进行maven2的快速配置 打开eclipse .选择菜单 window ->preferences ; 在新打开的对话框的左边的一列会看到一个名为Maven2的选项。鼠标单击,然后点击右边的Local Repository Folder 那一栏的Browse按扭。然后定位到你本地的maven repository 目录。就是前面运行脚本生成的哪个目录。比如我的 是C:\Documents and Settings\er\.m2\repository 点ok,配置完成。 接下来就是测试一下maven能不能在eclipse运行。新建一个项目 名为test. File->new ->project,选择java project 点next.然后在Project name 一栏输入test 然后我们回在下边看到有一个 JRE 的表。这个是指定你的项目所使用的JDK的版本。因为EJB3只能在jdk1.5上运行 所以在这必须选择1.5.具体配置方法为:点击Configure JREs...弹出一个对话框。这个对话框是配制jdk的。它会 有一个已经定义的jdk.。就是现在系统所使用的那个。如果此jdk的版本不是jdk1.5你就得添加一个。 点add按扭 在jre name一栏起个名字,比如 my-jdKl1.5,然后在 jre home directory一栏选择你的jdk1。5的安装路径,如果正确 在jre system libraries 下边回看到有很多瓶子。点ok,然后把 “对勾”从你原来哪个改到my-jdk1.5上就可以了。然后再 点ok.. 然后点finish.)右键点击test new class 新建一个类。包为org.main 类名为Sample .添加一些测试代码,最后这个类的代码如下: package org.main;public class Sample { public String something(){ return "aaaaaaaa"; }} 右键点击test new ->junit test case 回弹出一个对话框,问你是否要把junit .jar 加入到这个项目中。这回我们选NO. (因为这回我们是通过maven 来构建项目。导入类库的操作由Maven来控制。)在新弹出的窗口中它会让你输入包 名和类名。包名:org.test 类名: testSample 然后点确定。然后添加一些代码,最后我们testSample的代码如下: package org.test;import org.main.Sample;import junit.framework.TestCase;public class testSample extends TestCase { public void testSample(){ Sample sa = new Sample(); String a = sa.something(); this.assertNotNull(a); }}此会看到 有很多错误,这是因为没有导入junit.jar这个包。在项目test上点右键选择 Maven2 ->enable 在Group Id 一栏添如入test,然后点finish. 然后再在项目test上点右键选择 Maven2 ->add dependency 在新对话框的Query输入junit 然后在下面的Search Results 展开junit 选择 "3.8.1 - junit-3.8.1.jar ............"这一项。然后点ok. 然后等一会。我们会看到错误没有了。然后在 左边的Package Explorer展开Maben2 Dependencies 回 看到有一个junit.jar的瓶子。junit.jar这个库包已经被加入这个项目了。所以没有错误了。 然后打开testSample.java这个类。然后在outline窗口中把 类testSample展开,然后选择testSample()点 右键 然后选择run as ->junit test 然后回看到这个方法运行了。 这有个小插曲, public void testSample(){ Sample sa = new Sample(); String a = sa.something(); this.assertNotNull(a); } 这个是这个类的一个方法,不是它的构造函数。如果是以下形式 public testSample(){ Sample sa = new Sample(); String a = sa.something(); this.assertNotNull(a); } 就是这个类的构造函数。 可以看出构造函数与方法的区别为构造函数是 public testSample() 而方法为public void testSample()。 构造函数不指定返回类型。而且它必须与类同名。 在outLine 窗口构造函数上边有个“C”的小标记。我们把testSample 这个类改为 package org.test;import org.main.Sample;import junit.framework.TestCase;public class testSample extends TestCase { public void testSample(){ Sample sa = new Sample(); String a = sa.something(); this.assertNotNull(a); } public testSample(){ System.out.print("testSample"); }} 然后再在 outLine 选择testSample() (注意选那个没有"C"标记的那个,然后点右键,run as junit test) 然后我们回看到程序运行了,而且在console打印出 testSample,从中可以看到,你只要用到这个类、 它肯定要调用构造函数创建它自己,然后才执行你调用的方法。接着我们关掉junit窗口(在eclipse 左边那一列点 junit 旁边哪个X )回到Package Explorer。然后右键点 pom.xml 选择run as ->Maven2 build 在弹出的对话框选者Goals...按纽,Lifecycle Phases 展开选package 然后点ok.然后点run.等一会。 如果如下类似文字就好了:[INFO] Total time: 206 second [INFO] Finished at: Sun Mar 26 12:20:01 CST 2006 [INFO] Memory 1M/6M然后我们直接通过文件夹找到这个项目的位置。比如我的是 D:\Taylorspace\test\target在这个文件夹下我们会 看到一个名为test-0.0.1.jar的文件。总结: 从中可以看到Maven的两个作用 1。管理library 包。在开发过程中我们回遇到这么一种情况,比如你建了 两个项目,一个为 project1 一个为project2 而这两个项目都用到一个jar 包。比如junit.jar 如果两个项目各自导入 junit.jar 不对磁盘空间是一个浪费,而且也不好管理。而通过Maven 我们可以看到它把是这么做的。当你的项目 需要一个包通过 add dependancy.把它加进来以后Maven 就会在你在eclipse指定的哪个Local Repository Folder 目录下找这个jar包。比如我设的目录是C:\Documents and Settings\er\.m2\repository ,如果找到,就在项目的构建 路径加上这个jar.如果在这个目录找不到此jar包。它回从网上下载这个jar包,放到此目录。以后再用到此jar就不用下载 了。 2。就是项目部署。就是我们在上例中 选择pom.xml 然后选择运行,Goal 设成package,然后我们发现生成一个 test-0.0.1.jar的文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值