设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11907|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  ?! I% G0 \) X/ x+ y4 V* `. c1 m" Y% M# E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ f5 S* m; ]. V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 y5 h( K2 u: X* u. y4 Q/ H* y3 @swarm.SignatureNotFoundException8 K7 C7 j1 v0 A( A+ D/ A" G' ?
        at swarm.Selector.<init>(Selector.java:76)+ w. u0 b9 y  ?) O) s6 b/ T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- Y5 `. ^8 D$ R* E7 m. X* m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# K3 _" Z( g6 T! U8 d5 ^  Y2 }
0 d* H# `' `3 L; V. [1 y, }3 Z7 Q* Q7 ~1 A
import swarm.objectbase.SwarmImpl;2 i6 e$ S; g8 }, ~  `, I
import swarm.objectbase.Swarm;; z2 E& h0 r; l* c% m2 R* [* A' B
import swarm.activity.ScheduleImpl;: J3 y- S9 B" H' `. u& y) F+ b
import swarm.activity.Activity;% K9 R- F0 o3 a6 M
import swarm.activity.ActionGroupImpl;
) U) y# Y+ t/ \3 p5 b- Bimport swarm.collections.ListImpl;, ^* l( ^' b0 n* P; ]" N
import swarm.defobj.Zone; - j# w( a2 B( C% k
import swarm.Globals;% \( a5 n) W0 W( P- V! l3 k$ m
import swarm.Selector;
' B+ v# a2 K* Mimport swarm.activity.ActionGroup; 6 Q# v+ p  F$ w9 }
class Agent {; K9 e2 Z$ S) `6 t8 l. {8 B; _
        char id;
: A1 {8 t( D4 h, G
0 V% s# O% a% x: l+ c, c% I$ B        Agent(char id) {+ B9 X4 ?2 r/ u# P1 K
                this.id = id;7 _0 N7 T4 D$ f* K3 }
        }
5 a/ A; S( o7 d( y* H0 Q" [
* _1 V" u2 }/ }' j        public void agentStep() {# Z1 T  o3 p$ r) t
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) ^4 Y3 E( D* I" T* C" T        }
) u3 @) g9 `9 B' U* Z8 j6 \. \4 L}1 D- |/ U# |) B2 P! s* ~# o
$ b' }4 C" @4 \6 j5 ^5 ?( e7 M
public class ActionGroupDemo extends SwarmImpl {
/ r% v  B  z& [( ^        ScheduleImpl schedule;
. L4 G3 z6 j  B        ActionGroupImpl actionGroup;
# W" a0 c: {& g4 X% v* B        ListImpl list;
: R: s& ?- b% L/ K2 i        char Id = 'a';
7 L( x8 t0 t; S! m9 n7 B  ]& v0 y8 r1 I
        ActionGroupDemo(Zone aZone) {$ o/ C* L1 w8 r9 J
                super(aZone);
7 r3 @, @" A$ S' v2 `                list = new ListImpl(aZone);+ |4 s! U4 a2 a* A/ y4 d
                swarmSetp();/ ^, p1 O# K3 h
                actionGroup = new ActionGroupImpl(aZone);. i- z! }) O- E, l+ h! }5 A# q4 g
                schedule = new ScheduleImpl(aZone);- q5 S6 J5 o) P
                try {* u+ u, d, P# ~; y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 p2 ?. H2 [1 l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 D: Z3 Q% j# r4 z' w
                        
$ Y) E5 z- z0 ]" A& A                        actionGroup.createActionForEach$message(list, agentSel);
' v+ c4 S  }- c2 S+ N: l! e9 i" ~                        actionGroup.createActionTo$message(this, swarmSel);
# d8 y' [4 Q# \- u                        schedule.at$createAction(0, actionGroup);1 X2 S% i" k2 V& A& n1 C- I
                        schedule.at$createAction(1, actionGroup);
: T- T2 E; c: R6 X                        schedule.at$createAction(2, actionGroup);2 c* {* [2 h; Z, y1 d

5 f1 V/ i5 G. c( r, m$ z4 C* c                } catch (Exception e) {
9 W" X8 J8 m, @" z0 u* y: C                        e.printStackTrace(System.err);1 ~6 ]' A$ F" w" q' |" G
                        //System.out.println(e);
/ t( E' [4 v0 n" r8 P( X& J8 y                        System.exit(1);
! u; {& Y0 A2 o; Z( z: u                }7 ]! J7 h# [0 S% o1 _% t

6 Q1 M7 b( `) c. x* I4 c2 a
- J% ~$ t% @$ O0 f! j        }4 h) J7 j- B. T. l3 n1 `( J

2 I/ v2 ^4 s' Z. Z( x5 [        private void swarmSetp() {' J% L: T, W: }8 c# `6 q$ [! X/ ^
                list.addLast(new Agent(Id));8 ~$ x4 @$ d: t& [& T
                Id++;" @: M  M+ `9 F7 s. c5 c& e
        }
, s. z6 X& Q- `
2 Z2 N3 i) M* G6 \9 D        public Activity activateIn(Swarm context) {
; |4 u6 t% S8 t+ A% T) q% H; R                super.activateIn(context);8 U: s7 a% G' y/ G: b
                schedule.activateIn(this);; ?& S/ \7 r0 B5 D* e9 C5 n
                return getActivity();5 B: c# r  t$ ?' d, g9 r
        }0 y9 z) B, ]! x1 L' B1 r4 k! @
8 i, R  q: ]: Z3 v7 G
        public static void main(String[] args) {
3 V) ^: M/ X: A7 @, e) n- r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 j  U6 S* d0 \% ]* ]2 M/ G: ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 c8 Y4 h6 y- R6 Y# X
                swarms.buildObjects();
& h' U1 W8 \) i                swarms.buildActions();
) [$ ~% i9 G: X* ~7 \                swarms.activateIn(null).run();- E# ^+ o" ?4 K
        }
. u0 C' z2 s2 }0 ?- F% L4 |4 j3 _' D5 J2 c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-25 07:32 , Processed in 0.013766 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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