设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11098|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 w& |) L$ @% [7 ~8 K3 I
7 ?0 X+ @: v- C8 k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ ~; R5 [2 F; m- W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., R  I7 R3 w4 r/ d! n. z7 S. J
swarm.SignatureNotFoundException
& f& h4 P' y6 H! V* i' f1 w        at swarm.Selector.<init>(Selector.java:76)
/ d+ ?1 @1 K( C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 S3 p8 ?, [1 x" J, v. T& G: R/ G, d        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 _+ x. T, E7 J6 Z+ A

7 H1 Q4 o" r: c6 |
8 k4 X2 ~* v* ?6 o$ i  G! G8 N# yimport swarm.objectbase.SwarmImpl;
: u3 E1 ?! U: `import swarm.objectbase.Swarm;. ]4 ^3 W" p. D1 ~" |. p% w+ j0 l
import swarm.activity.ScheduleImpl;& G: m" G: E5 Q2 d& i
import swarm.activity.Activity;* G* h) v( ^3 M: A* ~* [
import swarm.activity.ActionGroupImpl;& j. @* e$ e3 r4 o
import swarm.collections.ListImpl;- M: p- V2 K& j/ g
import swarm.defobj.Zone;
" _5 z1 Z. t$ g# B$ m: c$ oimport swarm.Globals;
  e* R+ [" U: f. vimport swarm.Selector;
) k4 `9 f! h6 C+ E7 vimport swarm.activity.ActionGroup; + K7 E0 {3 Z; U' O0 o
class Agent {
; q) f6 h# y" Z+ d7 r* _& c+ r        char id;
3 f- X+ g0 }" y7 z" L
$ Y! Y4 `) ?9 |- ~" {  g  _+ T2 X        Agent(char id) {
# d8 G4 T4 a: J3 w  ?# N& [                this.id = id;- T; s$ _# V( n4 k" b* k) e4 I
        }! v( @/ Y) s9 h

6 U- B- v: L- W/ ]; N7 O) N* ^        public void agentStep() {
  V& q9 S% L! ?7 l2 D                System.out.println(id + ":" + Globals.env.getCurrentTime());3 m5 U' ?$ I! b& I: v! f
        }
. ?+ D2 w7 l9 n% m& Z) {}
- |( N7 G* q9 V1 c5 n9 ]0 o1 d9 T# ]) Z* m) S% y% J; X
public class ActionGroupDemo extends SwarmImpl {9 G" _! z, L" L" y6 Q
        ScheduleImpl schedule;/ O' [* F/ @1 s3 N% A. @* I- q
        ActionGroupImpl actionGroup;
, A0 K& U* e! N2 f- v9 E; ~        ListImpl list;
- u% h. A4 |& a8 ~, c$ B" k        char Id = 'a';8 P4 t  K4 o* z' [" v

# d0 H0 o; C/ {$ H) ?        ActionGroupDemo(Zone aZone) {, r. \9 b9 r5 C4 u* j, L
                super(aZone);4 V0 Q' d  e% L0 L8 z' |
                list = new ListImpl(aZone);
: i! r+ q- A6 |' R                swarmSetp();2 T9 d! O! f0 h+ M( H
                actionGroup = new ActionGroupImpl(aZone);
* G$ K/ r! \& B6 o                schedule = new ScheduleImpl(aZone);/ S8 D* i) e3 q/ @% i1 c
                try {
$ H+ f$ D; v6 j( u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 Y5 `% [" r6 g, K( }2 k                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 ]" ]6 W: r3 J/ E; K, E
                        
  h$ H9 n! _4 C4 X# p6 p( T) Y6 n+ n                        actionGroup.createActionForEach$message(list, agentSel);
, W+ \+ O! A+ C                        actionGroup.createActionTo$message(this, swarmSel);9 ~4 n) X. i& q8 T! V0 ]6 `
                        schedule.at$createAction(0, actionGroup);2 Y$ d6 T$ c; R" j& v
                        schedule.at$createAction(1, actionGroup);+ h& J8 ^' N) f5 c" {( j( c# F
                        schedule.at$createAction(2, actionGroup);2 ~2 f' q, k& i# F; Y' G7 K( u

, {+ A& n0 G- I% v, t+ @' p6 c$ N$ L                } catch (Exception e) {0 w$ a; _, b6 P
                        e.printStackTrace(System.err);$ T: Y$ ]4 s1 Z
                        //System.out.println(e);; T* S0 ?# L4 V/ V9 J9 x$ d; k4 ~
                        System.exit(1);# p# \9 J6 i4 g1 Z
                }- M. y9 ^/ A0 q$ a2 H% f5 k8 k

* i* V: l$ E% ~: b2 p0 D2 d' \  \5 f. L# J1 ?( B) e( J7 B
        }
9 M0 b6 l- O! n& O, p1 y  u; {1 V% ?3 U6 {* W
        private void swarmSetp() {
; a2 v+ a5 E/ r! |& B                list.addLast(new Agent(Id));, [7 E0 p- b+ Z) Z2 ^) D' W
                Id++;5 L; ?1 }$ a$ ?
        }
- k. U+ F: _: b9 F& `! w! K# |3 P6 D/ i- _
        public Activity activateIn(Swarm context) {
! ~3 m" S1 F8 a/ W; m1 k! _                super.activateIn(context);
  Q! o) S8 t7 }9 C7 G6 w                schedule.activateIn(this);
/ C. M) I. P0 u+ b" r                return getActivity();
1 U, L- S& \# D! c2 h        }
5 _. M) X. L2 B8 v/ Q
; W- k7 }8 Z' L# ^% K  n2 y        public static void main(String[] args) {
# h6 _' Q! k  I# e& }9 z" n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. O% P  ?" ]( {& V( V) x% P# X                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# v# H  S' \* k& C- {7 n/ W                swarms.buildObjects();
7 Y9 W5 ?4 [- k# K, ^) w                swarms.buildActions();4 H! q$ |$ q) t$ _+ z- @* g
                swarms.activateIn(null).run();0 o0 @; @7 C( o9 T- X* Y
        }
2 G& c2 \: p( q/ i$ |. z/ c0 g8 g7 ?5 L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 23:31 , Processed in 0.014627 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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