设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12293|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# P2 U2 R, U" W! c' r$ K# q  Q1 r
1 I0 i$ Q5 K6 Z) E) u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; i) E1 {# c0 g* g& t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- d; n" o2 d3 P3 B+ A
swarm.SignatureNotFoundException
" m. L% b9 g! @8 y8 \1 L        at swarm.Selector.<init>(Selector.java:76). \3 s1 ~: [; O# s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ q6 z% ^" X3 U* g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 e1 v$ ?. i1 T/ R5 R; y7 F1 C" O& r+ ]# {
5 h$ f* L6 R- s) L0 l* P6 {
import swarm.objectbase.SwarmImpl;
# J/ H9 ?! d: w- H  w# Simport swarm.objectbase.Swarm;
4 ?/ r) o! H7 b3 i5 B1 }" aimport swarm.activity.ScheduleImpl;" q- {% b; B, R+ u1 S( h
import swarm.activity.Activity;
) R  \( U- O% V6 himport swarm.activity.ActionGroupImpl;
# K4 y& S" Q& _* Kimport swarm.collections.ListImpl;
+ ^0 G' ~- y7 r  V* p* W) W" qimport swarm.defobj.Zone; ( V% f+ m, O* Y7 J$ p
import swarm.Globals;
- S7 G/ B+ u) H8 d: jimport swarm.Selector;4 S+ z0 K: ?  i) z+ f0 B. ^
import swarm.activity.ActionGroup;
  _7 I( X6 Y: y2 ]class Agent {; s0 n% @* h" I! y8 j$ q
        char id;2 X1 p/ t+ ]5 k' E/ V+ T
/ O8 n, ]5 a! _$ ]# {. O; _
        Agent(char id) {
5 Y* f/ ], @# i0 u                this.id = id;
, b) c1 \( M7 W3 D        }
! }0 [# E9 G' q" @3 z5 X
. ~+ f% ^2 i* Q, ?! k3 Q! s        public void agentStep() {0 _  n- |7 |$ L( L$ i3 ^& K
                System.out.println(id + ":" + Globals.env.getCurrentTime());1 c, y0 \9 F# n# Y! y' f0 V
        }
( T8 i2 N  \6 G7 G}
6 J& }& d$ J2 j$ q7 I+ F9 o0 B4 |
8 f9 \  N" |% dpublic class ActionGroupDemo extends SwarmImpl {
; s* S+ @0 r' H% l9 M        ScheduleImpl schedule;
* f$ u0 u/ a* ~; F7 ^6 ?0 g4 V        ActionGroupImpl actionGroup;
- g7 @( |! G& z$ [* ^/ t        ListImpl list;
" D( n6 p, W! q        char Id = 'a';6 r9 g" ]* @% G8 K
) u, F" |4 `: @
        ActionGroupDemo(Zone aZone) {
, y4 Z5 m. A4 x# ?' B" `% y' P                super(aZone);
7 i- J/ ]" B0 d: O. V; I8 P                list = new ListImpl(aZone);* z6 \4 S* r8 y' j
                swarmSetp();
0 I  Y. u2 x1 a$ O8 W                actionGroup = new ActionGroupImpl(aZone);
9 z4 _/ _. S! c5 [9 P0 c& z4 _2 B. N                schedule = new ScheduleImpl(aZone);
+ n6 }3 Q+ }1 O; K                try {
8 j1 h8 L& Q9 g' j, T, W! G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% M' [% L1 `( u7 Q' E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 m- V  ?0 B9 d0 I" J/ ]: e6 c
                        
! J  W; F/ [' ?# p/ F; {                        actionGroup.createActionForEach$message(list, agentSel);
  U  D' A: F* V* n3 `                        actionGroup.createActionTo$message(this, swarmSel);3 e; @6 Z, Y8 x5 l9 C
                        schedule.at$createAction(0, actionGroup);
4 T" ?! y9 c( ^) P                        schedule.at$createAction(1, actionGroup);
# _% P( V& E' ]7 P+ t0 n                        schedule.at$createAction(2, actionGroup);9 W6 V6 y* M# ?5 Y( Y
) B) J2 M( K9 T# m, N- s1 p- i% O
                } catch (Exception e) {* o3 x; ~0 k8 c, ^9 k* m9 X; J" k1 w6 f
                        e.printStackTrace(System.err);1 [5 a' g6 {. D' `
                        //System.out.println(e);' `) ~" _, u& Y
                        System.exit(1);: m3 M- U, j! {' X
                }
; b" W; M, Z/ @) @1 B+ ~7 a3 W) G& N) X; w

1 G- b5 }8 W, z5 t6 n        }# J4 D7 [4 u4 S, s0 V7 G! F

& a0 k" Q6 f+ O) w1 k6 `( `$ Q1 j4 M  j        private void swarmSetp() {" z0 F6 O, [  X1 a% s% F
                list.addLast(new Agent(Id));
6 ?- j+ ]+ ^) b  ?( o" b, M                Id++;0 h" P( O% t$ n
        }
/ [) m8 V' `  ]$ ~9 y  N0 p2 f8 N: F& k% p) |- x) R1 }+ ^9 A3 J
        public Activity activateIn(Swarm context) {
$ k9 e, `" `! A* b/ y& H1 p                super.activateIn(context);6 \6 B( J6 }4 A
                schedule.activateIn(this);
! G* M4 r. _% |1 R( z/ _                return getActivity();: e2 f2 O& E' {
        }
8 \8 A  z: |' V6 E) ~, [2 I6 o6 e; ^. @5 z
        public static void main(String[] args) {4 Y+ C$ q5 r; A2 W9 E+ G" \- ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 f5 ^! R2 ~' f" U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ Y" [3 N8 C- ~& J/ I( s: L
                swarms.buildObjects();
; F! y0 r$ U; a; I                swarms.buildActions();
+ Z5 L' X& S4 }2 j0 A% w, B- D- r9 z) C                swarms.activateIn(null).run();
# l' T- h+ X& q$ g        }! e8 S8 L. x  B5 K3 n4 A

, d1 t6 t% H: m9 J: B}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-4 16:42 , Processed in 0.015241 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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