设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7393|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 h/ K2 r/ ~! o

" F/ B+ O8 Q7 g3 `. ~* R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. d8 P+ M" u* v6 Q! d- {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* z) d" r! n4 f2 x. Q2 ^* u) ~* ~swarm.SignatureNotFoundException4 ]9 Q( x8 Y* B+ l# r- ]
        at swarm.Selector.<init>(Selector.java:76): S2 p' o& ^% `7 e8 S( x7 }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& d0 S/ M8 ]1 X        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 i  v# G2 L8 W3 S1 x
% ?3 N/ {. h. Q, ^/ {

7 e! R# f( E% C, U: |2 Dimport swarm.objectbase.SwarmImpl;: a, T0 p; e1 C$ a- d* A0 z
import swarm.objectbase.Swarm;, X/ q- a( w: e: ^$ d. k8 M
import swarm.activity.ScheduleImpl;
8 A- y  J3 G- T/ Q5 s+ kimport swarm.activity.Activity;& {+ `: l6 d! H6 _
import swarm.activity.ActionGroupImpl;
% J2 S  _! a6 ^7 C1 `7 d3 s/ \import swarm.collections.ListImpl;$ k' t. B9 Y! n: h, ]
import swarm.defobj.Zone; ; h' E& q- u: P1 G4 O/ ]/ ]# C1 C7 a
import swarm.Globals;$ z* z' l7 g) h* X, y
import swarm.Selector;  N9 k% S. \: M* P  R
import swarm.activity.ActionGroup; " F/ @; H2 r% l+ b( v3 Q6 x; E) N7 Y
class Agent {+ \# \% N5 U8 K) P; h+ a
        char id;
6 W% K4 a0 g* v; i( V2 M6 j+ l; m+ W) L6 k' C4 w& C. i' M
        Agent(char id) {# i( T+ U/ H- H2 k1 e% h# L, O& {) V5 O4 \
                this.id = id;
3 c  `: S6 M! `; H        }& w* H0 ^( L) |+ E2 L' l+ _
8 s/ _5 R6 Y  ^
        public void agentStep() {
/ ~7 u6 Y5 e3 l2 y                System.out.println(id + ":" + Globals.env.getCurrentTime());" T' }+ g/ t" \3 q6 j8 K% E: M
        }
% G1 w. T  M0 U4 ]3 _. |+ Z$ \}8 X! l3 z. o. ^7 w

6 Y6 T1 c! y3 lpublic class ActionGroupDemo extends SwarmImpl {
/ n0 O7 t0 q5 T3 X! }% o        ScheduleImpl schedule;8 u1 l2 s- W! B0 {. O' g+ l/ r
        ActionGroupImpl actionGroup;
/ j8 r  }" O  J+ ?; t# g: n        ListImpl list;
9 J$ j6 u- U4 S- [        char Id = 'a';
: \* b- g& \& Y; f+ f: ^4 G& W5 o& L) v4 q
        ActionGroupDemo(Zone aZone) {" @9 w# ~2 L3 M# D! n0 a
                super(aZone);* ~5 e5 W* x" X9 W
                list = new ListImpl(aZone);
, B8 e% U& ], \/ V( d! o8 o                swarmSetp();
. V2 h6 M6 s, y$ b6 }1 _                actionGroup = new ActionGroupImpl(aZone);, v+ e' h+ a! v- n
                schedule = new ScheduleImpl(aZone);' H9 `6 L  D. t- Z% t
                try {: I6 r) A# Y8 y( J, B& _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- t% ^* M4 v7 ~1 y* Z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 E! v4 t! w2 F
                        
0 ~% E* T/ b9 E1 B0 v: z                        actionGroup.createActionForEach$message(list, agentSel);$ X9 e; J& y1 D! e2 p
                        actionGroup.createActionTo$message(this, swarmSel);
6 H- O- A. t+ w                        schedule.at$createAction(0, actionGroup);
9 ~/ l- G2 ^6 X- }4 ?                        schedule.at$createAction(1, actionGroup);
" |) i; U8 ?# M$ u. c; g0 K                        schedule.at$createAction(2, actionGroup);" f( C% D9 i, ?) W( ~" w, T

  K1 Z! h) |1 ]9 R1 n                } catch (Exception e) {! w9 h$ y: D: l0 W/ V" b# x
                        e.printStackTrace(System.err);6 C  f2 B# b! t& U5 z& k3 ~
                        //System.out.println(e);
7 Y2 k# G8 H. a+ Y0 d. K% f                        System.exit(1);
$ ~$ G' I3 l7 X7 G1 J* H                }
) x7 K& D1 }' ]& f% T5 j+ l; s, j0 G- i: s" z" A
5 T1 C/ I, v( ^6 K& r  b7 Z  n
        }! \7 f( `; _- o3 [
. C3 a  a( I) D8 m( d
        private void swarmSetp() {; j. T6 ]8 R$ k4 A0 h  y5 I# f9 S
                list.addLast(new Agent(Id));
4 q1 x8 c$ L/ j0 S" i* E                Id++;! \: {1 s7 d% v+ k) k$ n
        }
" J) i0 z+ ?8 ^; W8 h0 y
3 j& o' O  J5 |: q. k        public Activity activateIn(Swarm context) {
  r# R9 v1 U; {/ F+ f, L8 q+ w                super.activateIn(context);1 k& e; ^( ]( Q7 L' c; a' E) X
                schedule.activateIn(this);: j9 l, L6 f9 U" y3 C2 w
                return getActivity();
, G1 H  U2 E; O) m; {; c        }6 ~8 F+ u) ^$ s$ ~+ W+ Y$ o
; ]2 A- d$ P8 D8 k- a3 b
        public static void main(String[] args) {% ~- v1 d5 X# K5 X( f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& |( i9 i. p& Y; D, m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' O' j9 E$ M* S7 ]  ]& D' w                swarms.buildObjects();
" |' L* U4 a3 h! j                swarms.buildActions();0 s# s% V% \$ a, n- R# T6 h
                swarms.activateIn(null).run();
7 v- i+ }- m. p* o) N8 x* H        }( [9 c% e) y) e& i0 n  F* }
8 c/ f) j5 _# C; \0 A3 z, }( x2 w
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-2-28 22:52 , Processed in 0.018378 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表