设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8737|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / X. V' A! g' P- a
; x  A' e: }6 a0 }3 Q, t2 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: N4 K8 l. g3 ?! {
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: H4 B$ |1 p% t0 L6 u
swarm.SignatureNotFoundException8 Y- [# I7 L$ h' J4 ?& Y2 `: k
        at swarm.Selector.<init>(Selector.java:76)
# s- ~1 F8 @4 W  {        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- }# T" K9 O* L8 w6 X% f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 J, |6 u! D& S1 M; H

* F, [* y' V( f8 X' W. C  ~3 h; _6 ~
import swarm.objectbase.SwarmImpl;
0 _( y0 D6 \: E  ]  Oimport swarm.objectbase.Swarm;$ P2 a  _0 K* q% R2 E. c) B# i
import swarm.activity.ScheduleImpl;5 {7 T0 p' {- [+ h. h2 R6 C
import swarm.activity.Activity;
0 L" X6 i$ K! ?import swarm.activity.ActionGroupImpl;
3 H6 X1 X) s- q8 z/ {$ Uimport swarm.collections.ListImpl;% F0 W  k2 h6 L* x
import swarm.defobj.Zone; ; Y  h: w' V+ w
import swarm.Globals;
, f3 \+ f% a: F3 k7 F  ^$ d6 p+ F1 Timport swarm.Selector;
* v7 x6 R/ t3 {# [1 q0 pimport swarm.activity.ActionGroup;
+ @* J- t  ?" s5 ^; l* [class Agent {2 Y/ G& R1 E: D! Z2 l' z
        char id;9 ^" ^  r( }5 P) @: l& K% ~
! E9 C$ q1 n% U
        Agent(char id) {
- Y4 u# u6 F+ m2 t                this.id = id;, ?0 x  r- z/ D/ K; ?# ]
        }
  O3 f% y+ U& h9 h5 m
" G$ f8 J5 R8 x, J  R- L$ i        public void agentStep() {! ?# B- i  |/ O
                System.out.println(id + ":" + Globals.env.getCurrentTime());* n* U. I: J% t- i) z
        }$ @  O3 K" `* |7 H* R
}2 w6 n9 l. i: c* e! F' L0 D
5 \  C$ N- Q5 t  K. E+ W# f% x7 n! x
public class ActionGroupDemo extends SwarmImpl {
1 ]5 L# }# x3 W: [5 x3 e        ScheduleImpl schedule;) `3 K, W5 H7 n2 ]+ i
        ActionGroupImpl actionGroup;
" z- P- N7 l6 M+ f. Z  U# _        ListImpl list;
& N9 R& T& U* Z7 m        char Id = 'a';, m. L* s% N  S6 ^' X
3 f4 s3 C1 s# }7 c, F
        ActionGroupDemo(Zone aZone) {
; s' X# U& `* S" }1 F                super(aZone);% k2 S( a/ g( \, J( e; p1 x& I
                list = new ListImpl(aZone);0 w6 o& c1 d  l; x
                swarmSetp();$ B) [  n2 E- ?# N5 n5 A
                actionGroup = new ActionGroupImpl(aZone);
; x3 A7 t( c) m* J( @$ H. p                schedule = new ScheduleImpl(aZone);
% ?2 C$ r$ B+ ~3 f5 |                try {' p8 t  ]! Q; C+ A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 X7 e! I( ^2 X0 G1 ?/ {( j9 X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# c: ]$ K- `* S2 |                        
0 i, ?0 ]/ Y8 k- l) k# h3 o: ]1 r- u$ g                        actionGroup.createActionForEach$message(list, agentSel);1 m' D3 Y3 y4 \% w
                        actionGroup.createActionTo$message(this, swarmSel);
2 u. h1 i' F& S, W4 u                        schedule.at$createAction(0, actionGroup);
! J7 H: V. {3 k                        schedule.at$createAction(1, actionGroup);; V# o6 u( }% y8 }" t( \
                        schedule.at$createAction(2, actionGroup);
/ Y4 U/ T' V- O+ u4 I
# F$ k$ N! }7 D& h6 i) r4 ~' \                } catch (Exception e) {
6 {" a6 P* X" f8 Q) D                        e.printStackTrace(System.err);
% i! K  k) z' ~# k; A' X3 _                        //System.out.println(e);/ h1 }0 n) P- X* X9 r) `3 `$ e9 C
                        System.exit(1);# y, m* P; a1 t/ v5 ]. C' L
                }
# N) n" d7 l1 `' t) R5 X& [; ^/ R! Q4 v

7 P( A" w3 S( k" p7 n        }' i. L: x. m9 R+ l9 x
2 D8 F5 e$ R( j2 G: j' w( {
        private void swarmSetp() {
) S4 C6 |7 B  o; o0 s                list.addLast(new Agent(Id));/ ?1 Y; ]3 x) y( T% p: y- `) C
                Id++;* P8 A2 ?$ ^) ~
        }
/ f$ b, t# F7 D( ]# Z* y  ?5 l* F2 G1 V2 K! v
        public Activity activateIn(Swarm context) {
% Z2 T: f$ j; ^2 S- |                super.activateIn(context);8 m; Z: T# R- l, e3 u8 F
                schedule.activateIn(this);# {; v6 J& R$ y# t0 |6 l% |
                return getActivity();% t9 `/ G' o6 U! u" N
        }* O2 X' j1 P/ `
. j2 {, ~% f/ z- Z9 Y
        public static void main(String[] args) {
2 t, E7 b2 C3 _6 L; P9 Q  T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" f; ], l  |: M- B7 j6 d
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% S: E6 \- y% d0 n                swarms.buildObjects();
! W- E& A7 D- @. w; c8 O0 l; Z3 ~                swarms.buildActions();4 _- _8 R" L8 o  {/ H
                swarms.activateIn(null).run();
* c4 \7 S3 h4 a% V        }( P0 Q8 z- ^- w0 E7 o1 |& A+ ?4 c
6 Z4 P1 z2 K! \9 W" E6 i, b1 J+ y: G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-21 03:10 , Processed in 0.013076 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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