设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5179|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   A8 ?3 K- X9 G6 G
3 E0 N* I/ r3 t* L/ p1 p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; C2 s6 X! a/ S! F1 U# S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; C0 v3 B/ Y1 e3 ^6 K( U) ^swarm.SignatureNotFoundException& T. _8 o; V; D4 g- O. m/ w
        at swarm.Selector.<init>(Selector.java:76)
9 A1 \  a" t" R. }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  z; H# N" t5 P' ^        at ActionGroupDemo.main(ActionGroupDemo.java:67): B2 M- x# ~8 L8 l1 Z: T( S$ I
# c; z. `% H# u+ T1 Z" X$ ~

9 G% @0 ]; D( @! _* r6 l) j7 Gimport swarm.objectbase.SwarmImpl;
( ~! a6 r2 m0 s* ?7 ^8 k: mimport swarm.objectbase.Swarm;9 z5 r. H, f6 k) O
import swarm.activity.ScheduleImpl;! j& p- o$ X) b8 g' w- ~
import swarm.activity.Activity;
$ ^; z# x# L% Z8 N. |" x5 yimport swarm.activity.ActionGroupImpl;3 B$ Y+ Q2 d* u, Q% l
import swarm.collections.ListImpl;
& b! p6 C7 W0 {2 o) ]6 R0 E! Limport swarm.defobj.Zone; 7 p1 d7 C/ G) B- u% s
import swarm.Globals;; ~* ?0 \$ U. e: ?- ?2 Y3 F; I- g" y
import swarm.Selector;0 o& n; b' }, [  A2 ?, P
import swarm.activity.ActionGroup;
' `' Q  F5 }2 T7 Y' Kclass Agent {
; `+ r6 k* N5 [* p$ T        char id;
9 M' O6 A" P* W" `- z( V
$ s5 r9 Q9 N" Z        Agent(char id) {, c6 q. `" n8 b' `8 a; C' X! _
                this.id = id;! m- C: i# M( h: S# ~) r* z% ]
        }2 g1 U. z* g  E; O* F
+ W5 v- p; |' f: ]$ H* a! N
        public void agentStep() {; c+ ^7 P9 @+ d. {2 J
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; k; [; X9 \) t  x$ q" p3 V        }
- ~: r9 b! p& f% U& Z0 A% S2 R}
9 [; d2 |- b! t& B5 B
7 c5 j9 P# z4 N9 }4 m4 p0 mpublic class ActionGroupDemo extends SwarmImpl {1 ^: ^0 t+ b4 s0 _* \5 F' G
        ScheduleImpl schedule;5 J/ T$ L3 e% C( p- ]+ g2 v( W2 h7 E
        ActionGroupImpl actionGroup;
% F( B! s+ z- I2 r& x* _        ListImpl list;
; D: z4 G0 ^1 r) a# j/ D        char Id = 'a';
$ _7 @* w! B% Y2 S4 d) K# ~& C  Y8 \$ k& [$ V; ^4 o5 Q
        ActionGroupDemo(Zone aZone) {9 m' e% K( x! i* ]
                super(aZone);5 Y9 b! n$ q* T; h
                list = new ListImpl(aZone);
! G5 g- r, [: m' C1 T0 p" t                swarmSetp();) E( y5 d" i& _# z5 U. K& @! l6 B$ }
                actionGroup = new ActionGroupImpl(aZone);- u! X+ b' ~, {$ u! B. ^7 r+ V
                schedule = new ScheduleImpl(aZone);- P+ X4 X7 K0 ^: @
                try {
9 X& X% A* G% C) _- J6 _, }                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  X, M" g: m( O8 J( H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  ~1 y1 G, C9 \4 K5 H; D9 ]                        
% L/ e6 Y  _8 N3 b! l                        actionGroup.createActionForEach$message(list, agentSel);
' m; j! ?3 O6 H5 E+ f* D2 I                        actionGroup.createActionTo$message(this, swarmSel);9 ]) w" l5 v; ^) j8 W
                        schedule.at$createAction(0, actionGroup);
' s7 w0 |1 i2 W9 S/ |0 K0 S                        schedule.at$createAction(1, actionGroup);0 ?: U& P& d4 p
                        schedule.at$createAction(2, actionGroup);* q6 {$ h+ w; n% V& v# a$ h+ C

0 B1 [1 R* g+ u0 \% H% A" Y                } catch (Exception e) {
1 e+ I- O; a8 O6 L% P; j                        e.printStackTrace(System.err);
1 O/ ~& q  V. X% v5 w                        //System.out.println(e);$ J/ B* @/ l$ ~) Q: Q! R
                        System.exit(1);0 h3 k  L5 i) T+ K# y, Z
                }) H1 o1 m* U4 Q4 ]& z, [0 A) |
2 ]: k6 `! o' K7 J

: F! J+ ?( ~( c: Y        }' ?  H' a5 l( Q; c6 I& d6 R( ?1 R. q

' K( ^; u& K% i$ n9 G% e$ W        private void swarmSetp() {/ E+ o" J4 x- l
                list.addLast(new Agent(Id));8 ]9 ]: U3 z; r! |
                Id++;( o: O: f, \" G9 E- y4 N
        }0 I" {- i" P2 M+ A

7 n' }. |2 ~3 {$ P* [2 \; \        public Activity activateIn(Swarm context) {5 Z" U+ k& e; Z4 w- d8 s, v+ K
                super.activateIn(context);
& Y5 C) `/ G( L- q5 O! B$ ]3 T" O                schedule.activateIn(this);
* [' t4 {- {- i7 d                return getActivity();8 {1 L8 k3 k" p9 ]! m+ Z
        }
3 _7 H$ I/ ]% C0 X; K/ `
4 f8 `0 |) s0 c  C. V$ w: W        public static void main(String[] args) {
1 U& {; R9 @* \& U2 c# g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 C; S" i  t1 z+ g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) C6 o# L1 Z3 S6 c                swarms.buildObjects();( |4 m6 O" P% C6 N8 |
                swarms.buildActions();
9 v& V0 j) j: P% T1 I                swarms.activateIn(null).run();
% k0 D. f0 K( j, J+ \% J        }! S' C) c6 ?+ ]" @
/ v) I1 [+ x5 @+ }: A( t# Q) O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-27 15:03 , Processed in 0.029163 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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