设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7716|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 @& O' g8 {9 x. Q6 R
) e7 x5 ]* N" l/ X" n1 _2 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& `  m- w/ R. e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 u/ {1 Y5 L% F+ a+ Wswarm.SignatureNotFoundException2 p9 I9 X8 v! g5 v4 N
        at swarm.Selector.<init>(Selector.java:76), L% A) r, j' A! s7 n# Q, S( z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" d) b" }8 E1 |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 d* _) I- X: x" ^& S  M- P

' \" ?, v1 \, Y# P, j5 H7 w- s% a* R$ K3 f* A! c3 [  [
import swarm.objectbase.SwarmImpl;
: x: k  S% I1 _" j  N# G2 X+ Qimport swarm.objectbase.Swarm;& ?/ w4 r  v7 s4 J5 {; D
import swarm.activity.ScheduleImpl;
- H; t. m" A0 [- l0 l! qimport swarm.activity.Activity;- Z' \) m, E9 u
import swarm.activity.ActionGroupImpl;
& m1 P: K: V9 W. x  V' iimport swarm.collections.ListImpl;- _# N  m2 M" ^0 C3 j
import swarm.defobj.Zone; " n* l5 d# I5 \! i5 L9 r+ Z& o
import swarm.Globals;$ k* b1 @+ X$ ]' F# }. s/ K6 X
import swarm.Selector;
0 z7 C2 E+ i! |3 e& W( H1 c/ Iimport swarm.activity.ActionGroup; + [% Z5 {6 x/ E+ d& N# y9 C( f
class Agent {
+ X9 u4 F* M8 A; N; V        char id;
# L, A; X# p% A9 s/ J# n; e1 V0 s! G( X" F5 d5 R
        Agent(char id) {
% f5 S' z( j) {& \+ B  m                this.id = id;
$ \- q) i# e1 H+ A        }' |# k# y+ q* e5 K1 C$ r
4 X/ Z4 a1 v; _+ R( b0 m3 D: b
        public void agentStep() {
$ v7 q' I# e- A+ R9 K& }4 h                System.out.println(id + ":" + Globals.env.getCurrentTime());$ Y* y4 I8 {6 u
        }
2 ?% E. o# \% {) f( m* O}
% ?' {6 I: P9 x
! f- l  D; R: ?public class ActionGroupDemo extends SwarmImpl {+ j# ]1 d: j- I4 S& K; Z
        ScheduleImpl schedule;
2 ~! C, V- x4 f5 L' J        ActionGroupImpl actionGroup;* j; Y8 a3 p) l+ U) o
        ListImpl list;
! ]' Y0 o7 ~! n        char Id = 'a';9 {: |% r$ k" i+ {% h! f- _
( q/ B; s# ~) Y6 D- q- ]
        ActionGroupDemo(Zone aZone) {! n! c  G& z& r/ ~6 m
                super(aZone);% l" i, T: u4 }% N1 v/ L
                list = new ListImpl(aZone);
+ U- n9 @7 b* q7 V; V8 C                swarmSetp();
) ^5 D2 \) t* h. w                actionGroup = new ActionGroupImpl(aZone);
; F* z/ o* G7 k; `% B                schedule = new ScheduleImpl(aZone);/ z% Y. {# t4 z5 y  [( a2 y  f% B
                try {
' W9 R  ?  y4 N; i6 s# n' ]  G+ E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( D9 o' Z/ L4 _7 I                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 L& ~8 @! w2 T+ b' k                        " Y% P( `& o6 K' a3 \
                        actionGroup.createActionForEach$message(list, agentSel);) D# I+ L. {) |! @: h
                        actionGroup.createActionTo$message(this, swarmSel);
: }0 ]" k/ F$ U  g6 r4 I9 O                        schedule.at$createAction(0, actionGroup);
: X3 B4 D- I3 s0 ^; W                        schedule.at$createAction(1, actionGroup);( W; l: O8 o* V2 [* M& ?1 N; s
                        schedule.at$createAction(2, actionGroup);0 z. e# m5 N$ i: A4 G' r
9 P  R+ |& `. L. ]6 w
                } catch (Exception e) {4 p' t8 n) h% D& d8 ]1 C" f
                        e.printStackTrace(System.err);9 y+ ]5 Y9 b- w9 r+ E
                        //System.out.println(e);8 v( J2 }" m* h0 V
                        System.exit(1);
% e. a4 f/ ^* a4 [8 E: e$ |                }
* B# J8 c1 I, O# c
0 r$ E  t  f8 k1 i/ ?0 T
( m9 C, Z' k4 V# W        }" i) ?. Y& H  G& S$ v" X/ t
7 @! l/ s+ m' s/ ^" {4 d% Z4 |
        private void swarmSetp() {& X/ v; G" c: M# Q
                list.addLast(new Agent(Id));
& P# R  n. ]2 ^& }                Id++;
9 ]7 X" x4 Y! O7 z        }( q$ C8 C0 B( `" f# E5 `+ o% J' V! [

4 y+ u! `; i. t/ t$ {        public Activity activateIn(Swarm context) {7 j4 L8 Z) ]2 F
                super.activateIn(context);  `+ s  F7 q8 C+ g1 I
                schedule.activateIn(this);
# I+ Q2 p' y6 R+ p5 }9 S                return getActivity();
3 j4 L# l+ f# P3 K        }
: a) u# `2 ]3 `* K7 L7 z& m
2 u. F+ l2 C# B! h' j3 P: ^        public static void main(String[] args) {
* ?1 E" W7 ]5 Q5 }9 ?; A; ~                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# R% \3 c# k0 O# O6 J+ M+ f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ L" \( f$ S+ i                swarms.buildObjects();; a' n& n0 H- H& U, N* f! N" C
                swarms.buildActions();/ O* ~% y3 c, t, P
                swarms.activateIn(null).run();
, B4 J. w% g: P5 O/ o* n, `        }
* D( y! N$ A8 T9 f. B
2 n+ `5 O# k) B}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-12 11:23 , Processed in 0.016938 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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