设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13213|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ y4 m  |7 Q1 ~1 g+ U: q/ _
4 _+ M  c3 Z4 D3 v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- }0 H$ F+ Z; j, N  u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 r5 p/ L" w4 t$ _5 _) N
swarm.SignatureNotFoundException6 V4 V5 J* o5 w* L! {
        at swarm.Selector.<init>(Selector.java:76)4 w/ c' M! D  w; c: ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* q- W* k2 h9 i& s2 N( E        at ActionGroupDemo.main(ActionGroupDemo.java:67)) K, r. v+ p0 e1 f, h
7 M- S2 c9 S; Q+ R( e& \( _

( c2 X" F1 @0 Gimport swarm.objectbase.SwarmImpl;
& ]& j5 U, z: `  h& u# u$ Bimport swarm.objectbase.Swarm;8 i3 U9 c: C$ ]- k% i
import swarm.activity.ScheduleImpl;
% ^! k' N' J" g$ [: |. r: Zimport swarm.activity.Activity;/ x) l  g- p; o
import swarm.activity.ActionGroupImpl;
0 c) W. l% u  himport swarm.collections.ListImpl;
' h$ [$ \) I$ Q2 v; }import swarm.defobj.Zone; ; u# X5 L3 K# y6 T/ j1 r1 ]
import swarm.Globals;
2 m9 p3 s8 Z/ Z: o) x1 |# Cimport swarm.Selector;
: l  `3 }9 m9 W! v# a5 kimport swarm.activity.ActionGroup; 5 Y- g+ \. ^! k7 t6 H' z/ N
class Agent {9 C7 ]! k1 J& l" L$ V
        char id;
) W: t2 F( W  S6 |" l! s. E. z# G
        Agent(char id) {7 j, S, S5 X8 o: ^% b
                this.id = id;- w3 I* F- W! L0 }
        }3 ~9 @  F/ M9 ^$ A8 X: L

" l3 z/ ^/ G4 E, N        public void agentStep() {. b4 J% O9 K% r4 Y" C: y
                System.out.println(id + ":" + Globals.env.getCurrentTime());6 B. f$ m9 D/ I
        }
( g2 A6 W( q6 s/ `6 _+ {" {}! w8 f2 j& W3 Z6 K9 g
/ _; p- F! s# u1 Z# G9 U+ `
public class ActionGroupDemo extends SwarmImpl {5 z. c8 Y7 x$ h" ^2 V
        ScheduleImpl schedule;2 q* g  r+ S9 {
        ActionGroupImpl actionGroup;
: B$ f; o- G( s! m; C: O, ]& I        ListImpl list;
+ ^# S5 E' Y6 X& \        char Id = 'a';
5 ^" q, u  B$ M, h  }2 S" Z. y6 k) |7 l+ D# g5 M/ {9 b& e
        ActionGroupDemo(Zone aZone) {
1 f" o8 r! f7 R                super(aZone);
( ^- Z8 {; s0 t/ @8 v, O2 M& }                list = new ListImpl(aZone);
6 |5 u- H; n$ t/ P; A! _$ E                swarmSetp();+ z1 V" `1 O$ M. y/ K( s  ?! X9 d
                actionGroup = new ActionGroupImpl(aZone);
  i  b* ^* ]" N" K1 M/ b! X                schedule = new ScheduleImpl(aZone);! t' {% h; I* \3 X' z
                try {2 }  ?# R3 t0 |6 K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 }4 B# `% b! x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, w; h  F6 ~9 [* H* w4 w2 m                        
& w8 n- G2 r$ ~* Y& Z& \                        actionGroup.createActionForEach$message(list, agentSel);
- @- z  K8 a) Q3 x- `. P                        actionGroup.createActionTo$message(this, swarmSel);
* J# G$ E- k: f* d                        schedule.at$createAction(0, actionGroup);
9 W! Z3 u6 d: Y$ o' n8 I; _                        schedule.at$createAction(1, actionGroup);
, s3 U) X$ {( t3 [/ d1 s: [5 E                        schedule.at$createAction(2, actionGroup);
+ x+ _, E) o( k  `" V8 z: n) }8 z2 S
                } catch (Exception e) {+ v6 [" V# D' j/ S5 q
                        e.printStackTrace(System.err);) @1 t7 t2 }5 k0 @! y( f0 {2 i) j
                        //System.out.println(e);( ^6 q2 f# F% B8 E0 R) Y, }5 z
                        System.exit(1);
5 n& \% ]# K( s1 V! a; ?                }
9 J/ s7 `% u2 H
, W* d* {" V/ y  I& E! ?+ N6 @- [) h! F
        }9 ?$ j2 F9 Z8 a" ]; J6 l% ^
1 _1 Q+ a, M! f/ L
        private void swarmSetp() {
  N9 u% A* }% r9 ~6 L( K* A3 Z                list.addLast(new Agent(Id));' E: y1 L, q6 a, Z# \: Z; L
                Id++;  E% V( ]) A8 a5 |6 b& H
        }
1 i/ A+ Q- f- o6 ]7 @# a+ q; j' k5 n; z3 @6 F
        public Activity activateIn(Swarm context) {
" E1 J# x' C( R' G* z                super.activateIn(context);# P" [$ t/ P; I
                schedule.activateIn(this);
" M# F4 @; Q: w- _# h) V5 r% g7 J                return getActivity();
4 W' H9 p4 N  Y        }
& a( D$ A5 m9 f7 m* j, S+ t! U3 J3 M! Y& f$ D+ F
        public static void main(String[] args) {  u/ ?0 S( T' g5 ?$ N- O% s! X! P; |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ y  N1 o) a' `7 N3 n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 X* x; i6 X1 F' P# h                swarms.buildObjects();1 L: I2 w% w! ^1 p# y* Y7 R
                swarms.buildActions();& e5 r2 f  C3 A" K- k  t" }$ M4 b
                swarms.activateIn(null).run();
9 O0 K; ^+ b7 f' Y' [        }; R1 T! z; V' K- y) d

: c& H5 F6 I1 `- `: ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-31 19:48 , Processed in 0.017457 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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