JPHP试用指南

编译

环境准备

  • 有JDK 1.6 的环境
  • Gradle 1.4 以上

具体配置略过,git签出https://github.com/dim-s/jphp/代码后,看readme.md文件即知。

开始编译

快速试用

  1. 切换到 jphp-example-project 目录
  2. /path/to/gradle jar 开始编译,编译完成后会在当前目前下 build/libs/中 生成 jar文件,如jphp-example-project-0.4-SNAPSHOT.jar 这个包中包含了jphp所有运行时需要的类库,可以独立运行

日常使用

编译出基础的jar包,目前jphp提供了五个库:jphp-core、jphp-cli、jphp-json-ext、jphp-zend-ext、jphp-swing-ext

  1. 去各个库下,运行 /path/to/gradle jar,生成jar包(其实不用全部,有些会依赖生成)
  2. 将各个目录build/libs下生成的文件全部挪出来,放到一个文件夹

预编译包

我把自己编译的jar包传到网上了,想试用的可以直接下载。

下载地址:http://pan.baidu.com/s/1mg8wQik

运行

快速试用官方提供的示例

java -jar build/libs/jphp-example-project-0.4-SNAPSHOT.jar

默认是基本的演示

他提供了几种演示模式:

  • bootstrap
  • bootstrap_test
  • bootstrap_gui 这是与Quercus不同的
  • bootstrap_server 看到里面的代码仿佛有了搞python的感觉

修改 jphp-example-project/src/main/resources/JPHP-INF/launcher.conf 文件中第三行

bootstrap.file = bootstrap_gui.php

切换模式

结论

JPHP是一门JVM语言,只是用了PHP的语法,就像jython使用python语法一样;而且他不以兼容php为目的。

他里面的echo语法是输出到控制台的。

似乎不能直接引用java类,只能在预先写好扩展,再进行调用。

JPHP试用笔记的更多相关文章

  1. kbmMW 5.07.00试用笔记

    在kbmMW 5.06.20试用笔记中遇到的问题,在这个版本中,基本都解决了.但还是发现修正后存在的小问题及新问题: 1.Resolve返回值错误 当提交的ClientQuery是执行一条sql语句, ...

  2. kbmMW 5.06.20试用笔记

    1.kbmMWConfiguration自动备份配置文件的问题还没有修正. 下面是以前写过的内容,再一次在新闻组中提出这个问题: kbmMW提供一个强大的配置信息管理对象,前期译过这个对象的介绍,在使 ...

  3. CentOS 7 mini 试用笔记

    CentOS 7 mini 试用笔记 安装过程中,网卡是默认关闭的,要手动打开. 安装好以后,查看IP地址:# ip addr----------------------1: lo: 本地回环2: e ...

  4. uniGUI试用笔记(十三)调用WebService

    今天尝试用uniGUI做Web服务器,调用应用服务器的WebService,遇到些问题记录下来备忘. 1.对WebService的调用同一般App程序,只是注意如果WebService的执行时间较长, ...

  5. understand试用笔记一阅读VS2010项目

    一.查看vs2010项目 打开understand,File—New—Project...—Next—Next [向导第三步,选“Import Visual Sudio project files”] ...

  6. Artix-7 50T FPGA试用笔记之Create a simple MicroBlaze System

    前言:之前笔者的试用博文提到安富利这块板子非常适合MicroBlaze开发,同时网上关于MicroBlaze的资料非常少(或含糊不清),没有一篇能完整介绍VIVADO SDK的设计流程,所以笔者带来这 ...

  7. uniGUI试用笔记(十五)通过URL控制参数

    通过URL代入参数,在代码中读取,如: http://localhost:8501/?ServerPort=212&&ServerIP=192.168.31.12 在代码中可以通过: ...

  8. uniGUI试用笔记(十四)TUniTreeView的CheckBox

    TUniTreeView目前版本没有封装CheckBox功能,所以需要手工处理,幸好0.99版提供部分代码了,修改过程如下: 1.uniGUIAbstractClasses.pas单元中修改基类TUn ...

  9. uniGUI试用笔记(十一)

    最近研究了一下UniGUI的TuniDBGrid,记录一下免得忘记了. TuniDBGrid的重要属性包括: 1.列—TUniDBGridColumns和TUniDBGridColumn 每个列对象( ...

随机推荐

  1. The model backing the <Database> context has changed since the database was created.

    Just found out the answer and thought of updating here. Just need to do the following. public class ...

  2. 最近一直在搞CAE,发现Eplan p8真的好强大。

    最近一直在搞CAE,发现Eplan p8真的好强大. 标准化的意义在与提高工作效率,减少重复. 标准化后,不容易出错,项目更改容易.事件都能及时跟踪.

  3. Asus ubuntu Fn恢复

    sudo sed 's/GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/GRUB_CMDLINE_LINUX_DEFAULT="qui ...

  4. FastSocket客户端/服务端通讯示例

    新建控制台项目,命名为Server 添加FastSocket.SocketBase,FastSocket.Server引用   Socket命令服务类: Sodao.FastSocket.Server ...

  5. 跟随标准与Webkit源码探究DOM -- 获取元素之getElementsByClassName

    按照类名获取元素 -- getElementsByClassName(HTML5) 标准 WHATWG 在Document与Element上均有定义,原型 HTMLCollection getElem ...

  6. eclipse从数据库逆向生成Hibernate实体类

    做项目必然要先进行数据库表设计,然后根据数据库设计建立实体类(VO),这是理所当然的,但是到公司里做项目后,让我认识到,没有说既进行完数据库设计后还要再“自己”建立一变VO.意思是,在项目设计时,要么 ...

  7. linux 系统运维

    Linux 系统监控1.进程    查看所有进程     ps -ef     ps -ef |grep nginx 结束进程    # 结束进程号为5031    kill -g 5031 # 结束 ...

  8. C#获取内网和外网IP

    写了个小客户端,里面用到了获取内网和外网的IP地址,代码如下: // InnerIP var ipHost = Dns.Resolve(Dns.GetHostName()); ]; innerIP = ...

  9. 安卓开发笔记——深入Activity

    在上一篇文章<安卓开发笔记——重识Activity >中,我们了解了Activity生命周期的执行顺序和一些基本的数据保存操作,但如果只知道这些是对于我们的开发需求来说是远远不够的,今天我 ...

  10. [SQL Server]Index/deadlock

    http://www.cnblogs.com/tintown/archive/2005/04/24/144272.html http://coolshell.cn/ http://blogs.msdn ...