设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6464|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 J( D; @5 ]6 w, e, |* A; i7 V
8 ~! {7 ~  G' }4 A) G- R5 `- c, ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; Y" `- F2 @6 f9 X. R& B* P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 s2 }: S, j. x# q4 a
swarm.SignatureNotFoundException0 F. J5 L: _+ [
        at swarm.Selector.<init>(Selector.java:76)3 L! ~2 M: E, Z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 {# P' r  l. ~6 D- c1 u9 a' w0 d0 l
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  }  {1 ?# T% M$ G
. ]3 D2 t! X5 f6 x& g9 U( n
' E8 n& H" d4 |9 H2 ~! D& Wimport swarm.objectbase.SwarmImpl;, r# @% U& J) s& _
import swarm.objectbase.Swarm;
# J$ y% h) b+ Z! Q0 kimport swarm.activity.ScheduleImpl;% c, d4 @$ Z8 \- b. t
import swarm.activity.Activity;
* @3 O: m- X4 Gimport swarm.activity.ActionGroupImpl;
, I" m  F- j! `; r0 ], x1 f: pimport swarm.collections.ListImpl;
9 M8 j- g9 q1 d, X/ v) R" B' |import swarm.defobj.Zone; # F$ j' j" o1 n- H' D+ b$ F
import swarm.Globals;1 v" E% n9 u2 H' n( X: \- O
import swarm.Selector;( K, d1 T: T) ^0 {9 e
import swarm.activity.ActionGroup; 1 ]' T+ c: [! |/ \9 m/ R! P# G/ \8 i
class Agent {
& J" Y$ W& v0 X4 I' n        char id;
2 h0 D6 N+ V6 I, I1 j+ q* h. w$ [9 O0 Q, g  T; _& o
        Agent(char id) {  I" G8 P( j% u/ ]& s5 H) z
                this.id = id;; @" x/ L' f5 ^( e$ G( w
        }/ b5 Y; g# _& C2 @* @

( }) q$ V9 d* e  A2 C' w  `        public void agentStep() {' [/ Y3 p5 I( g+ l
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ n. [: K7 O* l. ?        }
8 B  l! X& |# _; x% [}
5 |0 X" q/ S2 B7 w9 \
4 Q9 X$ z7 q6 L9 _. z, L# G" tpublic class ActionGroupDemo extends SwarmImpl {
6 D  S3 k4 D( w  K7 {        ScheduleImpl schedule;; x- r! H8 [' {; E! l, O
        ActionGroupImpl actionGroup;1 j# T6 _7 E; H
        ListImpl list;1 E( X8 u9 m5 _/ n# F
        char Id = 'a';- O4 N4 z" \5 d

" G& P; P1 G. a' x- `& m        ActionGroupDemo(Zone aZone) {; o2 ^0 [: m" F: N9 Z: T
                super(aZone);$ p/ C" ~/ ^$ a! e% r) M
                list = new ListImpl(aZone);5 W$ j( R# f# H8 s
                swarmSetp();8 y4 S* L, L9 F
                actionGroup = new ActionGroupImpl(aZone);' c! A8 a+ u( s7 X% z
                schedule = new ScheduleImpl(aZone);6 q/ e% x: Z6 G
                try {
) w. m( e$ ?5 B3 ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  u: A# e4 e" X, `9 D" }                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ g2 S7 n% u8 @, z                        
4 ], e. [$ h! o* c- v, h! d+ O; B                        actionGroup.createActionForEach$message(list, agentSel);7 Z" u$ U. m" [+ q0 M" a$ G
                        actionGroup.createActionTo$message(this, swarmSel);
* x; x4 {* w2 L! F                        schedule.at$createAction(0, actionGroup);
9 Y! K3 p7 T( U                        schedule.at$createAction(1, actionGroup);
9 Z0 c" O0 I  H& o) G7 U                        schedule.at$createAction(2, actionGroup);
/ p. e9 p0 r% F8 r, [
  K/ d; {% f, H8 ~2 J                } catch (Exception e) {7 ~7 ?3 R7 \$ G) q7 s$ Q# K: f
                        e.printStackTrace(System.err);+ g5 p. `. s, }6 b
                        //System.out.println(e);
0 Z& X: b" {5 U, I) w$ i5 q                        System.exit(1);9 U9 ^7 b* T, d+ {  E9 p; L
                }  K6 r+ i, L8 y  ]
+ l/ E7 i+ ~0 N

  w$ @3 o7 @6 Z3 I9 K        }
, H$ S( `( A% g$ l3 W# ]
, X* d; h0 n& L0 r' l8 _; Z        private void swarmSetp() {
. b2 p4 y. H" K5 Z7 }                list.addLast(new Agent(Id));
; |9 L, y* s( i6 `2 F& E9 a                Id++;9 }% ]! u4 U" b# O, |
        }) v! p, U8 C4 Z
6 [+ o% ?6 ~; \
        public Activity activateIn(Swarm context) {. ~6 G! p3 G3 E
                super.activateIn(context);$ c  {! ^; r' ?9 n6 l) ^5 E  G
                schedule.activateIn(this);
$ G5 r- [" Q3 q6 i1 x$ G( p" C3 w                return getActivity();
8 K1 Z2 d  V" h3 |% ?" Z        }9 N2 V; X4 i3 q/ |

7 W  T! [# y0 c: [* s7 y        public static void main(String[] args) {
! N- Z# E' ^9 c& R, d. O3 O; W                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' L- P0 j2 P/ p0 f& O4 w, |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' @$ r" f( f. L: U7 w0 h6 w                swarms.buildObjects();3 z7 r- z8 |. S" Z/ W& n
                swarms.buildActions();, @, F+ Z) F& w" E
                swarms.activateIn(null).run();* O) y: ~8 l% i% M
        }
8 M/ t8 z4 V' q0 e' L$ k, ?1 w# \) Y9 h1 K5 h
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-29 08:24 , Processed in 0.016140 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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