设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11113|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . H$ l' P" D' h. t$ @, C
: U- a7 Q. r& e$ X* T! o/ c2 e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& S6 S! V2 y: F* n+ _) `. J% d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( U7 F: d; A$ [5 `swarm.SignatureNotFoundException
) ^1 l) T8 @+ R7 E        at swarm.Selector.<init>(Selector.java:76)9 N9 |5 }# J5 n2 H' y' S# F5 ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 }& x- S* b1 l- W- \/ k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ B! N' b8 B* d: z- t' L) k
% N9 j, l# o3 T& x
4 H; D, f' [& ^- E. bimport swarm.objectbase.SwarmImpl;0 @' W) O) i( D/ j! G0 e
import swarm.objectbase.Swarm;8 T0 d- N, M4 L& P7 m
import swarm.activity.ScheduleImpl;
6 `5 l9 Q1 ]! i/ Rimport swarm.activity.Activity;! Y$ o' \2 b$ L/ ]! O0 _2 D
import swarm.activity.ActionGroupImpl;3 o$ ^, l+ C0 I# B$ _7 I
import swarm.collections.ListImpl;
* K% W, ^6 O# R+ C9 u! V" ~import swarm.defobj.Zone;
, x4 v& I+ x1 f" ^import swarm.Globals;9 o, T1 i/ A% t' P
import swarm.Selector;3 k7 [* x9 u2 o9 \9 W' _
import swarm.activity.ActionGroup; ' e3 n  x- d( a, b  ?1 n
class Agent {. K) b, Z, j# b' e( m' I
        char id;9 q  G. R5 _3 l3 S: k
) z3 Q: x  h4 ^/ U6 ]; A6 T9 _
        Agent(char id) {2 c/ c* q" h$ r
                this.id = id;9 R! l1 J. j- x
        }
7 _% V( a2 P! ^1 M, m
; @. W* m# ~6 l0 ]        public void agentStep() {: b6 c3 v' F% E, Q0 ~+ I* S
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* Q. y  r5 L$ V( R0 z% t) U( x0 ~        }: s1 S2 D7 K8 r1 {' o) g# ]# o2 O
}* H1 @% }# U5 y% B+ g2 d

& M; R3 ~- V' \% \4 w7 l% Xpublic class ActionGroupDemo extends SwarmImpl {# W3 a% u0 S, l+ P9 s3 @
        ScheduleImpl schedule;* X- @( l& o5 y2 n. u5 B0 N
        ActionGroupImpl actionGroup;8 B" q0 E& f8 g) i; B
        ListImpl list;
/ X" l) K: [& z  d4 S3 O. t        char Id = 'a';& I5 e6 u: b+ i8 \- A, _
6 t& }9 V/ ]4 x  C" [
        ActionGroupDemo(Zone aZone) {
  A" a$ A1 I7 e$ L  S$ B& q8 O                super(aZone);
$ S) j7 Y% W, o8 q                list = new ListImpl(aZone);
8 h  w- }. S: w* M5 |0 Q0 P                swarmSetp();6 G0 |& L0 Y) @8 I! A% `. m
                actionGroup = new ActionGroupImpl(aZone);* c/ x' T2 z. `' f7 ^; _& Z
                schedule = new ScheduleImpl(aZone);
# T! I' A5 _! `8 @                try {
; a0 u' A2 P7 s                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 U/ d: Q; S/ u                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: z& v) |+ i# H9 h7 Q8 G- k( M- I                        9 N" C+ ~- J0 z" D
                        actionGroup.createActionForEach$message(list, agentSel);
4 P: Z+ {4 Y2 i) L4 |                        actionGroup.createActionTo$message(this, swarmSel);% Q* I- K& V/ {/ n2 F: T0 v$ r6 A
                        schedule.at$createAction(0, actionGroup);
4 s8 u; y9 s4 i# ]6 T; U9 m9 Q. `& S- n6 E                        schedule.at$createAction(1, actionGroup);
+ r- Y0 c$ B2 w                        schedule.at$createAction(2, actionGroup);
' A% A8 k" j. F: r  y6 {, @' b: e6 o. u
                } catch (Exception e) {
6 n$ Y, u& F" G! v! g0 n) @$ R                        e.printStackTrace(System.err);
. ~% c) D' I/ @, r: R8 F" y                        //System.out.println(e);
6 _# u5 l2 {" _: N                        System.exit(1);
4 E# q5 |+ s/ `" e& i                }1 p" o  L' z9 j, C) ]" a

- Z. \3 t& j9 W  i  B1 h: H0 ?0 ~
. ~) p" K. D6 I! d& c# |/ g        }5 r+ @. R, I3 l( m$ N1 {
+ m# g' r5 i! T" S) ~
        private void swarmSetp() {
, ~  E0 O5 X# a  I0 R* i                list.addLast(new Agent(Id));
) n8 Y' a' u! q' ~& f                Id++;  ~+ l& R( q5 B- Q, o
        }3 C7 U/ A; ^6 K0 i; |6 z) E. E
' |& q/ t  {$ V0 P& T# ~& o# G
        public Activity activateIn(Swarm context) {
) L8 Q* i: |9 t# b                super.activateIn(context);1 l, a) h: Q. b. k4 a6 w7 U
                schedule.activateIn(this);  Y5 J( t) \, [( A# E3 w
                return getActivity();+ i( m, x3 m+ R, T# X' ]
        }
2 h+ W0 R# r9 y2 i' K* t" `
* s: L) m  D7 @' c0 _) H5 S        public static void main(String[] args) {
+ R  J' P- i4 k0 T, R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. K% @  s0 d% N2 o6 p5 c. d+ M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  A+ h( w  b' `+ F$ g3 r% C                swarms.buildObjects();
& V5 f; R0 E0 X, b6 ^$ }                swarms.buildActions();/ J. ^1 \( H+ V5 v* _7 ~
                swarms.activateIn(null).run();
0 ?6 \) ^* g: V0 F        }
" I- H* n: B0 P$ j; r, A0 @0 k1 Z/ E# F* E$ Q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-3 10:48 , Processed in 0.016451 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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