设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7513|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & D1 q7 v0 n4 t) ]: x- g

- L, R- X% ^# j9 Q% Y. L. z9 ], Q. [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ l4 O/ {$ ]3 c0 j* X# D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ u5 Q, E/ T0 Y* S5 j8 ^) O
swarm.SignatureNotFoundException: A  D2 _1 ^5 @* X: C( s
        at swarm.Selector.<init>(Selector.java:76)
8 X  |" d( s. [9 H% Z2 G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ |3 o% G3 A- E5 E+ ?        at ActionGroupDemo.main(ActionGroupDemo.java:67); a! c" k3 Q; s1 o
4 K) N+ Q7 ?6 q1 y- i. W+ \7 b5 J
# J" v4 S+ Z2 x/ c. L4 g9 |' J
import swarm.objectbase.SwarmImpl;
; ~1 |+ y3 d& y. ^import swarm.objectbase.Swarm;' I% Z0 N" Z! G3 X: K8 S
import swarm.activity.ScheduleImpl;, {% \7 v/ ?0 h3 {% }% G( G% @
import swarm.activity.Activity;. c7 o9 s3 ~% r- d/ @
import swarm.activity.ActionGroupImpl;0 ]* e& [/ l' ]; J; t! @- V2 D3 V
import swarm.collections.ListImpl;
3 w6 g0 E: q* V9 Qimport swarm.defobj.Zone;
" v* c' O8 o/ l/ S0 {: ~import swarm.Globals;6 Z5 X# _  i2 X0 E$ J, |) g: z1 j
import swarm.Selector;
9 \+ u  g4 h0 @$ kimport swarm.activity.ActionGroup; 6 P% b* Y; K3 t& A
class Agent {
/ C( F1 a- J0 O0 ^6 F" G, G        char id;
. Y# b1 @6 ~; z7 B- J, i/ x  ~) ~' R) U! S& f! t1 [8 b% b2 Y4 Z; s
        Agent(char id) {( ?5 O( @) y/ t, j$ m) X
                this.id = id;; i9 \# @6 ]$ _, k4 b
        }
+ ~0 K7 ]- D; h' N: c
3 k* }' j( t4 V; p- ^5 @2 B  L        public void agentStep() {
$ Z0 p+ W# R4 a, H* \6 u2 U1 H3 }                System.out.println(id + ":" + Globals.env.getCurrentTime());. j' q  H# [4 ?! K3 I
        }" [  P: ?7 p, v( \  f8 Q
}+ l( k, H9 q9 B
& |% O# K+ z2 v- U+ k
public class ActionGroupDemo extends SwarmImpl {
# H$ E. K0 y+ d- l: K        ScheduleImpl schedule;& I: \6 h5 k" G
        ActionGroupImpl actionGroup;
  [- j6 }- g: V9 x. p$ V" @        ListImpl list;
0 G& y/ \. T" N3 H6 V! Q        char Id = 'a';
( m" T4 P( q( R% O7 P7 D' K$ A2 F% g, F% q1 J' y5 H* t
        ActionGroupDemo(Zone aZone) {" h2 j, l8 ^. \: K/ s
                super(aZone);
0 z* V5 X: a- Y! U, {  z0 H" o                list = new ListImpl(aZone);
* A' N& ~1 x( ]7 ^2 y                swarmSetp();
  W* w$ k: R% X( l                actionGroup = new ActionGroupImpl(aZone);
# h% `! `7 o9 v( C" N* l; ^                schedule = new ScheduleImpl(aZone);
* P) D$ P! s! ?  G* z, ]: l) v                try {0 x1 {, t% D$ o7 e! C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% i  O+ b3 _9 K* B0 Y5 u. [5 @
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 c- P+ {: i/ V0 k& E9 v4 g
                        
7 U5 t3 H5 U( }2 X, {0 Q! o  O                        actionGroup.createActionForEach$message(list, agentSel);
, n4 u( Z+ t2 h0 j( o5 n$ {                        actionGroup.createActionTo$message(this, swarmSel);
. j, |( j& q+ [* y: i  |                        schedule.at$createAction(0, actionGroup);, T; \5 z, T# z3 `
                        schedule.at$createAction(1, actionGroup);# o$ D4 I5 u: o- g9 B6 @
                        schedule.at$createAction(2, actionGroup);& O+ j& @" W2 M7 B
) a& s; r0 ]* C2 j
                } catch (Exception e) {
! j3 S6 W6 Z( Q/ S* X  c7 b                        e.printStackTrace(System.err);& u% `$ P# {5 V8 ]
                        //System.out.println(e);
* O7 g6 o: ^8 d1 n8 [                        System.exit(1);( z3 Y1 t1 l" W, D% o
                }  H7 u! u  H" \! D

  V' A8 B) E1 s6 p. a  C6 e* b5 y) r0 _' l+ f/ o+ W1 T
        }* p5 ]- I& U0 Q) m) a6 s$ D; W' f

1 B2 N5 C7 d" A1 b        private void swarmSetp() {
- r0 b6 V# l5 k4 ^# M                list.addLast(new Agent(Id));4 w" |8 Q/ H1 O
                Id++;
) J( T( o$ |7 D. G        }
9 u  i% l5 p& r' d$ D7 L3 I# q8 d9 Q8 q+ e6 [+ ?0 y
        public Activity activateIn(Swarm context) {
( S4 K" R6 ~4 O5 ?( |                super.activateIn(context);
! n* H' B1 s1 p1 C/ Y                schedule.activateIn(this);
6 ~) t  n  T1 Q% w: O9 q                return getActivity();
3 ?; p; G3 q- T  @        }
) d! ]. |& z( M% L. j, d! |( K; q6 q- B
        public static void main(String[] args) {
; Y: q7 I) O5 g" \* _9 z5 b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  J4 t# s: P/ x% R$ T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" A1 ^7 q7 S, o2 \: {( ]2 G                swarms.buildObjects();  d2 P# K' S# e% |
                swarms.buildActions();9 b: I0 `# ?" ?& z7 s, D3 w% ?
                swarms.activateIn(null).run();
6 u% I/ d! }5 n" H! F$ \( ^5 u        }: [4 g: o, a: T6 Q% @3 d

3 Z* C; y5 L& l( u' Y4 y% f* P0 q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-5 06:32 , Processed in 0.021817 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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